[RFC/RFT PATCH, middle end]: Fix PR 34621, [4.3 Regression] gcc.c-torture/execute/va-arg-25.c:32: internal compiler error: in expand_call, at calls.c:2785
Uros Bizjak
ubizjak@gmail.com
Fri Feb 15 08:15:00 GMT 2008
On Thu, Feb 14, 2008 at 6:04 PM, Uros Bizjak <ubizjak@gmail.com> wrote:
> Patch was bootstrapped and regression tested on i686-pc-linux-gnu and
> x86_64-pc-linux-gnu. Also, I have compiled and successfully executed
> va-arg-25.c with STACK_BOUNDARY set to 128. For added fun, it also works
> when integer va-arguments are changed to double, so I'm pretty confident
> in this patch.
>
> While I believe that the patch is correct, I don't have
> i686-apple-darwin target (or PPC that could also be affected) here to
> fully test this change. Volunteers are welcome...
To quote Comment #34:
------- Comment #34 From Dominique d'Humieres 2008-02-15 07:21
[reply] -------
With the patch in http://gcc.gnu.org/ml/gcc-patches/2008-02/msg00507.html, the
PR is fixed without regression on intel(32/64 bit) and ppc(32 bit) darwin9.
I'll post the test results ASAP.
---endquote---
OTOH, the test for STACK_BOUNDARY can simply be removed, because
PARM_BOUNDARY is always equal or smaller than STACK_BOUNDARY. I have checked
all targets, and this is true everywhere. So the updated patch:
2008-02-15 Uros Bizjak <ubizjak@gmail.com>
PR middle-end/34621
* function.c (pad_to_arg_alignment): Remove test for STACK_BOUNDARY when
calculating alignment_pad.
OK for mainline?
Uros.
More information about the Gcc-patches
mailing list