------- Comment #11 from pinskia at gcc dot gnu dot org  2008-09-21 00:45 
-------
Here is another testcase which shows the issue:
int f(int b);

float g(int a)
{
  while (f(a + 1));
  while (f(a));
}
--- CUT ---
This increases the need for another volatile register and in fact increases
register pressure even more.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|[4.3/4.4 Regression] address|[4.3/4.4 Regression]
                   |addition moved out of the   |addition moved out of the
                   |loop                        |loop when used with an
                   |                            |argument


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

Reply via email to