This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: fix gcc.target/powerpc/pr18096-1.c for Darwin
- From: Mike Stump <mrs at apple dot com>
- To: Andrew Pinski <pinskia at physics dot uc dot edu>
- Cc: Geoffrey Keating <geoffk at apple dot com>, patch Patches <gcc-patches at gcc dot gnu dot org>
- Date: Thu, 2 Mar 2006 14:38:35 -0800
- Subject: Re: fix gcc.target/powerpc/pr18096-1.c for Darwin
- References: <20051201083459.7C78022698DE@geoffk5.apple.com> <afcdbfb5ec10e64eb1118d6786a0e78f@physics.uc.edu> <B7AF6E86-9F9A-4CC4-8F93-8E9503DEA4B1@apple.com> <d0fcdae93e3b5ef26deb64ffd421bc37@physics.uc.edu>
On Mar 2, 2006, at 11:50 AM, Andrew Pinski wrote:
On Jan 31, 2006, at 9:19 PM, Geoffrey Keating wrote:
I thought I applied it; no, I don't remember any reason not to
apply it, and I can't think of any so long as it does actually fix
the problem.
Would it be ok if I apply it?
I researched this. The issue is that this was uncaught by the mid-
end and so code was added to the port to catch this in:
2004-10-30 Roger Sayle <roger@eyesopen.com>
PR middle-end/18096
* config/rs6000/rs6000.c (rs6000_emit_allocate_stack): Check
that
the stack adjustment, "size", is valid for Pmode. If the stack
frame is too large, generate a trap insn and issue a warning.
but then, later someone fixed the mid-end like so:
2005-11-09 Eric Botcazou <ebotcazou@adacore.com>
* function.c (assign_stack_local_1): Issue an error message if
the frame size overflows in the signed target arithmetics.
with the same idea, but different wording, so now, I think it is
impossible to trip the original check that was put in with the port
as far as I can see on darwin, so, we're left with either, the
testcase is wrong because it checks the wrong wording, the testcase
is wrong because it isn't applicable anymore or the wording in the
mid-end is wrong because it doesn't match the testcase.
Geoff, do you have a take on which fix it right? Off-hand, I think
retaining the testcase is good and having it check the mid-end is
reasonable. This seems to be what your patch did. I tried to modify
the testcase to hit the port check, but couldn't come up with
anything that would do it.