From 380b9affd1a9e9ac6a52642ee7fc098b404bda7e Mon Sep 17 00:00:00 2001 From: Corinna Vinschen Date: Tue, 15 Dec 2015 14:55:48 +0100 Subject: [PATCH] Drop has_restricted_stack_args flag --- winsup/cygwin/exceptions.cc | 6 ------ winsup/cygwin/wincap.cc | 8 -------- winsup/cygwin/wincap.h | 2 -- 3 files changed, 16 deletions(-) diff --git a/winsup/cygwin/exceptions.cc b/winsup/cygwin/exceptions.cc index 7ad99888d..504fae438 100644 --- a/winsup/cygwin/exceptions.cc +++ b/winsup/cygwin/exceptions.cc @@ -354,12 +354,6 @@ stack_info::walk () /* The arguments follow the return address */ sf.Params[0] = (_ADDR) *++framep; - /* Hack for XP/2K3 WOW64. If the first stack param points to the - application entry point, we can only fetch one additional - parameter. Accessing anything beyond this address results in - a SEGV. This is fixed in Vista/2K8 WOW64. */ - if (wincap.has_restricted_stack_args () && sf.Params[0] == 0x401000) - nparams = 2; for (unsigned i = 1; i < nparams; i++) sf.Params[i] = (_ADDR) *++framep; } diff --git a/winsup/cygwin/wincap.cc b/winsup/cygwin/wincap.cc index 06601d878..4146ee4ba 100644 --- a/winsup/cygwin/wincap.cc +++ b/winsup/cygwin/wincap.cc @@ -24,7 +24,6 @@ wincaps wincap_xpsp2 __attribute__((section (".cygwin_dll_common"), shared)) = { has_mandatory_integrity_control:false, needs_count_in_si_lpres2:false, has_gaa_largeaddress_bug:false, - has_restricted_stack_args:false, has_transactions:false, has_sendmsg:false, has_broken_udf:true, @@ -56,7 +55,6 @@ wincaps wincap_2003 __attribute__((section (".cygwin_dll_common"), shared)) = { has_mandatory_integrity_control:false, needs_count_in_si_lpres2:false, has_gaa_largeaddress_bug:false, - has_restricted_stack_args:true, has_transactions:false, has_sendmsg:false, has_broken_udf:true, @@ -88,7 +86,6 @@ wincaps wincap_vista __attribute__((section (".cygwin_dll_common"), shared)) = { has_mandatory_integrity_control:true, needs_count_in_si_lpres2:true, has_gaa_largeaddress_bug:true, - has_restricted_stack_args:false, has_transactions:true, has_sendmsg:true, has_broken_udf:false, @@ -120,7 +117,6 @@ wincaps wincap_7 __attribute__((section (".cygwin_dll_common"), shared)) = { has_mandatory_integrity_control:true, needs_count_in_si_lpres2:false, has_gaa_largeaddress_bug:true, - has_restricted_stack_args:false, has_transactions:true, has_sendmsg:true, has_broken_udf:false, @@ -152,7 +148,6 @@ wincaps wincap_8 __attribute__((section (".cygwin_dll_common"), shared)) = { has_mandatory_integrity_control:true, needs_count_in_si_lpres2:false, has_gaa_largeaddress_bug:false, - has_restricted_stack_args:false, has_transactions:true, has_sendmsg:true, has_broken_udf:false, @@ -184,7 +179,6 @@ wincaps wincap_10 __attribute__((section (".cygwin_dll_common"), shared)) = { has_mandatory_integrity_control:true, needs_count_in_si_lpres2:false, has_gaa_largeaddress_bug:false, - has_restricted_stack_args:false, has_transactions:true, has_sendmsg:true, has_broken_udf:false, @@ -216,7 +210,6 @@ wincaps wincap_10_1511 __attribute__((section (".cygwin_dll_common"), shared)) = has_mandatory_integrity_control:true, needs_count_in_si_lpres2:false, has_gaa_largeaddress_bug:false, - has_restricted_stack_args:false, has_transactions:true, has_sendmsg:true, has_broken_udf:false, @@ -318,7 +311,6 @@ wincapc::init () #endif { ((wincaps *)caps)->needs_count_in_si_lpres2 = false; - ((wincaps *)caps)->has_restricted_stack_args = false; ((wincaps *)caps)->wow64_has_secondary_stack = false; ((wincaps *)caps)->has_gaa_largeaddress_bug = false; ((wincaps *)caps)->has_broken_prefetchvm = false; diff --git a/winsup/cygwin/wincap.h b/winsup/cygwin/wincap.h index e62f9fb63..4f60d11e6 100644 --- a/winsup/cygwin/wincap.h +++ b/winsup/cygwin/wincap.h @@ -17,7 +17,6 @@ struct wincaps unsigned has_mandatory_integrity_control : 1; unsigned needs_count_in_si_lpres2 : 1; unsigned has_gaa_largeaddress_bug : 1; - unsigned has_restricted_stack_args : 1; unsigned has_transactions : 1; unsigned has_sendmsg : 1; unsigned has_broken_udf : 1; @@ -74,7 +73,6 @@ public: bool IMPLEMENT (has_mandatory_integrity_control) bool IMPLEMENT (needs_count_in_si_lpres2) bool IMPLEMENT (has_gaa_largeaddress_bug) - bool IMPLEMENT (has_restricted_stack_args) bool IMPLEMENT (has_transactions) bool IMPLEMENT (has_sendmsg) bool IMPLEMENT (has_broken_udf) -- 2.43.5