This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/61300] powerpc64le miscompile with K&R-style function definition at -O0
- From: "amodra at gmail dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Tue, 03 Jun 2014 00:56:47 +0000
- Subject: [Bug target/61300] powerpc64le miscompile with K&R-style function definition at -O0
- Auto-submitted: auto-generated
- References: <bug-61300-4 at http dot gcc dot gnu dot org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61300
--- Comment #7 from Alan Modra <amodra at gmail dot com> ---
No, I don't believe there is a convenient way we can look at the
REG_PARM_STACK_SPACE argument to determine whether it was used for a call or
for a function body. (I did think it might be possible, hence my comment #2,
but that was remembering the situation from way back before
TYPE_ACTUAL_ARG_TYPES became private to C lang tree nodes.)
function.c (function body case) always passes the function decl as the
argument. calls.c (call case) sometimes passes a function decl, and sometimes
a function type. If calls.c always passed a type it would be easy.. A cursory
glance over all target defines of REG_PARM_STACK_SPACE says that it should be
possible to change calls.c to do this. Is that a better design change than
defining INCOMING_REG_PARM_STACK_SPACE? I don't think so..