This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/53854] New: ICE in find_constant_pool_ref
- From: "jakub at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Wed, 04 Jul 2012 13:05:23 +0000
- Subject: [Bug target/53854] New: ICE in find_constant_pool_ref
- Auto-submitted: auto-generated
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53854
Bug #: 53854
Summary: ICE in find_constant_pool_ref
Classification: Unclassified
Product: gcc
Version: 4.7.1
Status: UNCONFIRMED
Keywords: ice-on-valid-code
Severity: normal
Priority: P3
Component: target
AssignedTo: jakub@gcc.gnu.org
ReportedBy: jakub@gcc.gnu.org
Target: s390x-linux
void baz (void);
void
foo (void)
{
int i;
double d = 2.0;
float f = 2222.0f;
for (i = 0; i < 10; i++)
{
__asm ("# %0 %1" :: "or" (d), "or" (f));
baz ();
}
}
ICEs with -m64 -O2 in find_constant_pool_ref, which assumes a single insn
references at most one constant pool entry. ASM_OPERANDS can reference many
more though. This breaks systemtap probes on s390x.