http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59379
H.J. Lu <hjl.tools at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2013-12-04 Ever confirmed|0 |1 --- Comment #5 from H.J. Lu <hjl.tools at gmail dot com> --- The difference starts in ivopts pass: diff -upr good/test.c.120t.ivopts bad/test.c.120t.ivopts --- good/test.c.120t.ivopts 2013-12-03 16:46:21.995210047 -0800 +++ bad/test.c.120t.ivopts 2013-12-03 16:46:34.847986232 -0800 @@ -13,6 +13,7 @@ gomp_init_num_threads () long unsigned int _13; long unsigned int gomp_cpuset_size.2_14; void * gomp_cpusetp.3_17; + long unsigned int _19; long unsigned int gomp_cpuset_size.1_20; int _22; long unsigned int gomp_cpuset_size.1_25; @@ -39,6 +40,7 @@ gomp_init_num_threads () struct cpu_set_t * prephitmp_89; struct cpu_set_t * prephitmp_90; long unsigned int pretmp_91; + long unsigned int _92; long unsigned int pretmp_93; long unsigned int pretmp_95; long unsigned int prephitmp_96; @@ -93,7 +95,9 @@ gomp_init_num_threads () <bb 8>: # i_76 = PHI <i_48(12), i_47(7)> i_48 = i_76 + 18446744073709551615; - if (i_47 > i_48) + _92 = i_47 * 18446744069414584320; + i_94 = i_48 + _92; + if (i_47 > i_94) goto <bb 9>; else goto <bb 11>; @@ -118,7 +122,9 @@ gomp_init_num_threads () goto <bb 13>; <bb 11>: - if (i_48 != 0) + _19 = i_47 * 18446744069414584320; + i_69 = _19 + i_48; + if (i_69 != 0) goto <bb 12>; else goto <bb 13>;