long long xlrandom (long long x) { int bits = 64; do { unsigned b = (random () & 15) + 1; x <<= b; /* shift up 1-16 steps */ bits -= b; } while (bits >= 0); return x; }
-- Summary: [cond-optab] worse code with long long shifts on v850 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=39723