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: unassig...@gcc.gnu.org

        ReportedBy: venkataramanan.ku...@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.

Reply via email to