[Bug rtl-optimization/55845] New: 454.calculix miscompares with -march=btver2 -O3 -ffastmath -fschedule-insns -mvzeroupper for test data run

venkataramanan.kumar at amd dot com gcc-bugzilla@gcc.gnu.org
Wed Jan 2 09:28:00 GMT 2013


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

             Bug #: 55845
           Summary: 454.calculix miscompares with -march=btver2 -O3
                    -ffastmath -fschedule-insns -mvzeroupper for test data
                    run
    Classification: Unclassified
           Product: gcc
           Version: 4.8.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: rtl-optimization
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: venkataramanan.kumar@amd.com
              Host: x86_64-unknown-linux-gnu
            Target: x86_64-unknown-linux-gnu
             Build: x86_64-unknown-linux-gnu


GCC revision used: 194705
Flags used:  -march=btver2 -O3 -ffastmath -fschedule-insns -mvzeroupper

Observation:
(Snip)
*** Miscompare of beampic.dat; for details see
   
/local/home/vekumar/specruns/benchspec/CPU2006/454.calculix/run/run_base_test_gcc480_bt_sched.exe_nofma.0000/beampic.dat.mis
Error: 1x454.calculix
Producing Raw Reports
(Snip)

On triaging further the file SPOOLES/Utilities/src/Utilities_DV.Utilities_DV.c
when compiled with -march=btver2 -O3 -ffastmath -fschedule-insns -mvzeroupper
seems to schedule vzeroupper incorrectly.

vzeroupper will clobber all ymm registers, so should not be moved arround.

Also using -march=corei7-avx seems to have problem.

I am drilling down further.



More information about the Gcc-bugs mailing list