This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/52555] New: [Regression] ICE unrecognizable insn with -ffast-math and __attribute__((optimize(xx)))
- From: "roman at binarylife dot net" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Sun, 11 Mar 2012 05:23:48 +0000
- Subject: [Bug target/52555] New: [Regression] ICE unrecognizable insn with -ffast-math and __attribute__((optimize(xx)))
- Auto-submitted: auto-generated
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52555
Bug #: 52555
Summary: [Regression] ICE unrecognizable insn with -ffast-math
and __attribute__((optimize(xx)))
Classification: Unclassified
Product: gcc
Version: 4.8.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: roman@binarylife.net
$ cat test.cpp
typedef unsigned long value_t;
struct foo {
static float _factor;
value_t _val;
foo()
: _val(7)
{
_val=__builtin_ceil(_val * _factor);
}
};
struct bar {
void operator()(foo&);
};
void
__attribute__((optimize("O")))
test() {
foo f;
bar b;
b(f);
}
int main() {
test();
}
$ g++ -c -O2 -ffast-math test.cpp
test.cpp: In function âvoid test()â:
test.cpp:24:1: error: unrecognizable insn:
(insn 9 8 10 3 (parallel [
(set (reg:XF 67)
(unspec:XF [
(reg:XF 68)
] UNSPEC_FRNDINT_CEIL))
(clobber (reg:CC 17 flags))
]) test.cpp:10 -1
(nil))
test.cpp:24:1: internal compiler error: in extract_insn, at recog.c:2109
Please submit a full bug report,
This happens with x86 and x86_64.