[PATCH, i386]: FIx PR target/12329, x86: local function declared with attribute((regparm(3))) gets corrupted parent frame pointer

H.J. Lu hjl.tools@gmail.com
Sun Mar 23 07:23:00 GMT 2008


Hi Uros,

>  > This is the final patch I checked into stack branch.
>  >
>  >
>  > H.J.
>  >
>  > gcc/
>
> >
>  > 2008-03-22  Uros Bizjak  <ubizjak@gmail.com>
>  >           H.J. Lu  <hongjiu.lu@intel.com>
>  >
>
> >       PR target/12329
>  >       * config/i386/i386.c (ix86_function_regparm): Limit the number of
>  >       register passing arguments to 2 for nested functions.
>
>  I think that we want hard error here, please look at [1] for the rationale.
>
>  [1] http://gcc.gnu.org/ml/gcc-patches/2008-03/msg01310.html
>

We don't use ecx to align stack on stack branch if it is used. As for
nested function,
do we have a testcase to show the ABI change is externally visible?

BTW, your testcase works fine on stack branch.

H.J.



More information about the Gcc-patches mailing list