[Bug target/39717] New: [cond-optab] CSE does not put subregs into COMPAREs on many CC0 machines
bonzini at gnu dot org
gcc-bugzilla@gcc.gnu.org
Fri Apr 10 12:46:00 GMT 2009
/* cris and mn10300 -O2 */
foo (float *c)
{
union
{
float r;
unsigned int i;
}
e;
e.r = c[0];
if (e.i < 0x3f7f0000) return (e.r = e.r / 2.0f, e.i);
return ((int) e.i < 0) ? 0 : 255;
}
Probably this is a duplicate too for vax:
int a, b;
int baz (short x) { return x; }
int bar (int x) {
if (baz (a ^ x ^ a)) return b;
return 0;
}
int foo (void) {
return bar (a == 0 || 1 == 1 - a) ? 1 : bar (1 && a);
}
--
Summary: [cond-optab] CSE does not put subregs into COMPAREs on
many CC0 machines
Product: gcc
Version: 4.5.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: bonzini at gnu dot org
OtherBugsDependingO 39714
nThis:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39717
More information about the Gcc-bugs
mailing list