http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56618
Bug #: 56618
Summary: inline assembler with too many lines causes ICE in
account_size_time, at ipa-inline-analysis.c
Classification: Unclassified
Product: gcc
Version: unknown
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: tree-optimization
AssignedTo: [email protected]
ReportedBy: [email protected]
A 6.4 mio lines inline assembler statement (happened in some auto generated
real code) causes an overflow in the inliner cost estimation per cpu, resulting
in a ICE.
Reproducer
#!/usr/bin/python
print "int foo(void) {"
print " asm("
for i in range(6400000):
print r' "\n"'
print " );"
print "}"
./longasm.py > l.c
gcc l.c
Observed back to 4.7 at least, but much older compilers should be ok. So it's a
regression
Patch has been posted at
http://www.mail-archive.com/[email protected]/msg50027.html
There was some discussion, but no approval