[Bug tree-optimization/79291] New: r244397 introduces alias related performance issues for daxpy on MIPS

doug.gilmore at imgtec dot com gcc-bugzilla@gcc.gnu.org
Mon Jan 30 19:26:00 GMT 2017


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

            Bug ID: 79291
           Summary: r244397 introduces alias related performance issues
                    for daxpy on MIPS
           Product: gcc
           Version: 7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: doug.gilmore at imgtec dot com
  Target Milestone: ---

It appears that r244397 introduces pealing for DP daxpy, which per
bug 69710, introduces a performance degradation due to alias issues.

After IVOPTS before r244897 (use daxpy example from bug 69710):

  ivtmp.20_36 = ivtmp.20_35 + 1;
  ivtmp.21_24 = ivtmp.21_9 + 16;
  ivtmp.24_3 = ivtmp.24_2 + 16;

After IVOPTS after r244897:  
  ivtmp.23_56 = ivtmp.23_24 + 1;
  ivtmp.24_11 = ivtmp.24_9 + 16;
  ivtmp.27_87 = ivtmp.27_86 + 16;
  ivtmp.29_90 = ivtmp.29_89 + 16;

Thus after r244397 we have a problem in DP daxpy that we were
only seeing for SP daxpy (or saxpy) as shown in bug69710.

BTW: I have been investigating another IVOPTS related regression
on MIPS32R2 that is related to the generation of indexed

memory OPs:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78176#c12

I'll be updating that report with more information on how to
fix the regression and how it relates to this issue.

Bin:  I suspect this is also now broken on ARM, can
you check?

Thanks,

Doug


More information about the Gcc-bugs mailing list