https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93429

            Bug ID: 93429
           Summary: Missed IPA-CP on by-ref argument directly passed
                    through from caller
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: ipa
          Assignee: unassigned at gcc dot gnu.org
          Reporter: fxue at gcc dot gnu.org
                CC: marxin at gcc dot gnu.org
  Target Milestone: ---

Here is a case,

   f1 (int *p1)
   {
     ... = *p1;
     ...
   }

   f2 (int *p2)
   {
      *p2 = 2;
      f1 (p2);
   }

It is easy to that in f1(), *p1 should be 2 after a simple propagation from
f2() to f1(). But current IPA never do that if argument to f1() is a simple
pass-through of a parameter of f2(), as p2 -> p1.

Reply via email to