public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug middle-end/86715] ICE passing too large argument on stack
[not found] <bug-86715-4@http.gcc.gnu.org/bugzilla/>
@ 2020-03-27 2:45 ` xerofoify at gmail dot com
2020-03-27 16:28 ` segher at gcc dot gnu.org
1 sibling, 0 replies; 2+ messages in thread
From: xerofoify at gmail dot com @ 2020-03-27 2:45 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86715
Nicholas Krause <xerofoify at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |segher at gcc dot gnu.org,
| |xerofoify at gmail dot com
--- Comment #1 from Nicholas Krause <xerofoify at gmail dot com> ---
Hi,
This does not seem to be happening in the middle end but in RTL expand. I've
tried on x86_64 trunk and now powerpc. Seems to only happen on PowerPC now as
seen here:
test.cpp: In function ‘int main(int, char**)’:
test.cpp:33:23: sorry, unimplemented: passing too large argument on stack
33 | result = mulm(m1, m2);
| ^
during RTL pass: expand
g++: internal compiler error: Segmentation fault signal terminated program
cc1plus
Please submit a full bug report,
with preprocessed source if appropriate.
See <https://gcc.gnu.org/bugs/> for instructions.
I'm not aware of stack size limitations on Power so I'm CCed the maintainer to
take a look. Not sure if this occurs on other architectures in expand like ARM
as well. Segher would you please take a look at this for me.
^ permalink raw reply [flat|nested] 2+ messages in thread
* [Bug middle-end/86715] ICE passing too large argument on stack
[not found] <bug-86715-4@http.gcc.gnu.org/bugzilla/>
2020-03-27 2:45 ` [Bug middle-end/86715] ICE passing too large argument on stack xerofoify at gmail dot com
@ 2020-03-27 16:28 ` segher at gcc dot gnu.org
1 sibling, 0 replies; 2+ messages in thread
From: segher at gcc dot gnu.org @ 2020-03-27 16:28 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86715
Segher Boessenkool <segher at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|--- |WONTFIX
Status|UNCONFIRMED |RESOLVED
--- Comment #2 from Segher Boessenkool <segher at gcc dot gnu.org> ---
"struct Matrix" is over 2GB big. The whole stack is just a few megabytes
typically. Passing "struct Matrix" on the stack is entirely unreasonable.
The comment right before this sorry() is
/* We don't allow passing huge (> 2^30 B) arguments
by value. It would cause an overflow later on. */
and this is in generic code.
Closing as WONTFIX. Sorry.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2020-03-27 16:28 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <bug-86715-4@http.gcc.gnu.org/bugzilla/>
2020-03-27 2:45 ` [Bug middle-end/86715] ICE passing too large argument on stack xerofoify at gmail dot com
2020-03-27 16:28 ` segher at gcc dot gnu.org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).