[Bug middle-end/42505] [4.4/4.5/4.6 Regression] loop canonicalization causes a lot of unnecessary temporary variables

steven at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Fri Jun 4 07:45:00 GMT 2010



------- Comment #5 from steven at gcc dot gnu dot org  2010-06-04 07:45 -------
AFAIU, you can't randomly change signed to unsigned, due to different overflow
semantics, which is why IVOPTS doesn't make this change itself. Imagine you
enter the loop with count = 0, and with a second counter hidden in func. You
will not get the same number of iterations if you change the type of count from
"int" to "unsigned int".


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42505



More information about the Gcc-bugs mailing list