Daniel is aware of the problem.

In the followign example, *gp at return is partially redundant. Not eliminated.

int *gp;
int g, g2;
int foo(int p)
{
   int t = 0;
   if (p)
      t = *gp + 1;

   return (*gp + t);
}


-- 
           Summary: Missing PRE for indirect load
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: xinliangli at gmail dot com


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

Reply via email to