From patchwork Tue Jun 29 14:18:33 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: hookize FUNCTION_{INCOMING_,}ARG and FUNCTION_ARG_ADVANCE From: Nathan Froyd X-Patchwork-Id: 57271 Message-Id: <20100629141832.GN22606@codesourcery.com> To: "H.J. Lu" Cc: gcc-patches@gcc.gnu.org Date: Tue, 29 Jun 2010 07:18:33 -0700 On Tue, Jun 29, 2010 at 07:13:37AM -0700, H.J. Lu wrote: > This caused: > > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44713 Bother. Worked on my machine... Testing patch below, will commit as obvious if it goes through. -Nathan Index: i386.c =================================================================== --- i386.c (revision 161534) +++ i386.c (working copy) @@ -6025,7 +6025,7 @@ function_arg_advance_32 (CUMULATIVE_ARGS static void function_arg_advance_64 (CUMULATIVE_ARGS *cum, enum machine_mode mode, - tree type, HOST_WIDE_INT words, int named) + tree type, HOST_WIDE_INT words, bool named) { int int_nregs, sse_nregs; @@ -6067,7 +6067,7 @@ function_arg_advance_ms_64 (CUMULATIVE_A static void ix86_function_arg_advance (CUMULATIVE_ARGS *cum, enum machine_mode mode, - const_tree type, int named) + const_tree type, bool named) { HOST_WIDE_INT bytes, words; @@ -6220,7 +6220,7 @@ function_arg_32 (CUMULATIVE_ARGS *cum, e static rtx function_arg_64 (CUMULATIVE_ARGS *cum, enum machine_mode mode, - enum machine_mode orig_mode, tree type, int named) + enum machine_mode orig_mode, tree type, bool named) { /* Handle a hidden AL argument containing number of registers for varargs x86-64 functions. */ @@ -6256,7 +6256,7 @@ function_arg_64 (CUMULATIVE_ARGS *cum, e static rtx function_arg_ms_64 (CUMULATIVE_ARGS *cum, enum machine_mode mode, - enum machine_mode orig_mode, int named, + enum machine_mode orig_mode, bool named, HOST_WIDE_INT bytes) { unsigned int regno; @@ -6314,7 +6314,7 @@ function_arg_ms_64 (CUMULATIVE_ARGS *cum static rtx ix86_function_arg (const CUMULATIVE_ARGS *cum, enum machine_mode omode, - const_tree type, int named) + const_tree type, bool named) { enum machine_mode mode = omode; HOST_WIDE_INT bytes, words;