This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC 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]

RE: [PATCH 08/22] Add Intel CET support for EH in libgcc.


I propose the following changes. I do not have ia64 to test. Ok for trunk?

bash-4.2$ svn diff
Index: libgcc/config/cr16/unwind-cr16.c
===================================================================
--- libgcc/config/cr16/unwind-cr16.c    (revision 254908)
+++ libgcc/config/cr16/unwind-cr16.c    (working copy)
@@ -1567,7 +1567,7 @@
    our caller.  */
 #if defined( __CR16C__ )

-#define uw_install_context(CURRENT, TARGET)                            \
+#define uw_install_context(CURRENT, TARGET, FRAMES)                    \
   do                                                                   \
     {                                                                  \
       long offset = uw_install_context_1 ((CURRENT), (TARGET));                \
@@ -1578,7 +1578,7 @@
     }                                                                  \
   while (0)
 #else
-#define uw_install_context(CURRENT, TARGET)                             \
+#define uw_install_context(CURRENT, TARGET, FRAMES)                     \
   do                                                                    \
     {                                                                   \
       long offset = uw_install_context_1 ((CURRENT), (TARGET));         \
Index: libgcc/config/ia64/unwind-ia64.c
===================================================================
--- libgcc/config/ia64/unwind-ia64.c    (revision 254908)
+++ libgcc/config/ia64/unwind-ia64.c    (working copy)
@@ -2165,7 +2165,8 @@

 static void __attribute__((noreturn))
 uw_install_context (struct _Unwind_Context *current __attribute__((unused)),
-                   struct _Unwind_Context *target)
+                   struct _Unwind_Context *target,
+                   unsigned long frames __attribute__((unused)))
 {
   unw_word ireg_buf[4], ireg_nat = 0, ireg_pr = 0;
   unw_word saved_lc;
Index: libgcc/config/xtensa/unwind-dw2-xtensa.c
===================================================================
--- libgcc/config/xtensa/unwind-dw2-xtensa.c    (revision 254908)
+++ libgcc/config/xtensa/unwind-dw2-xtensa.c    (working copy)
@@ -483,7 +483,7 @@
    macro because __builtin_eh_return must be invoked in the context of
    our caller.  */

-#define uw_install_context(CURRENT, TARGET)                             \
+#define uw_install_context(CURRENT, TARGET, FRAMES)                             \
   do                                                                    \
     {                                                                   \
       long offset = uw_install_context_1 ((CURRENT), (TARGET));                 \
Index: libgcc/unwind-sjlj.c
===================================================================
--- libgcc/unwind-sjlj.c        (revision 254908)
+++ libgcc/unwind-sjlj.c        (working copy)
@@ -300,7 +300,8 @@

 static void __attribute__((noreturn))
 uw_install_context (struct _Unwind_Context *current __attribute__((unused)),
-                    struct _Unwind_Context *target)
+                    struct _Unwind_Context *target,
+                   unsigned long frames __attribute__((unused)))
 {
   _Unwind_SjLj_SetContext (target->fc);
   longjmp (target->fc->jbuf, 1);


Igor

> -----Original Message-----
> From: Andreas Schwab [mailto:schwab@linux-m68k.org]
> Sent: Saturday, November 18, 2017 2:51 PM
> To: Tsimbalist, Igor V <igor.v.tsimbalist@intel.com>
> Cc: Jeff Law <law@redhat.com>; gcc-patches@gcc.gnu.org; ian@airs.com
> Subject: Re: [PATCH 08/22] Add Intel CET support for EH in libgcc.
> 
> In file included from ../../../libgcc/config/ia64/unwind-ia64.c:2448:
> ../../../libgcc/unwind.inc: In function '_Unwind_RaiseException':
> ../../../libgcc/unwind.inc:140:3: error: too many arguments to function
> 'uw_install_context'
>    uw_install_context (&this_context, &cur_context, frames);
>    ^~~~~~~~~~~~~~~~~~
> ../../../libgcc/config/ia64/unwind-ia64.c:2167:1: note: declared here
>  uw_install_context (struct _Unwind_Context *current
> __attribute__((unused)),
>  ^~~~~~~~~~~~~~~~~~
> 
> Andreas.
> 
> --
> Andreas Schwab, schwab@linux-m68k.org
> GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
> "And now for something completely different."


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