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:sch...@linux-m68k.org] > Sent: Saturday, November 18, 2017 2:51 PM > To: Tsimbalist, Igor V <igor.v.tsimbal...@intel.com> > Cc: Jeff Law <l...@redhat.com>; gcc-patches@gcc.gnu.org; i...@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, sch...@linux-m68k.org > GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 > "And now for something completely different."