This is the mail archive of the cygwin-cvs@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[newlib-cygwin] Drop has_restricted_stack_args flag


https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=380b9affd1a9e9ac6a52642ee7fc098b404bda7e

commit 380b9affd1a9e9ac6a52642ee7fc098b404bda7e
Author: Corinna Vinschen <corinna@vinschen.de>
Date:   Tue Dec 15 14:55:48 2015 +0100

    Drop has_restricted_stack_args flag

Diff:
---
 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 7ad9988..504fae4 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 06601d8..4146ee4 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 e62f9fb..4f60d11 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)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]