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

            Bug ID: 59021
           Summary: [4.9 regression] new vzeroupper instructions generated
                    with -mavx
           Product: gcc
           Version: 4.9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: ebotcazou at gcc dot gnu.org

Created attachment 31173
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=31173&action=edit
Testcase

It's not clear to me whether this is a real bug or not, but new vzeroupper
instructions started to be generated with -mavx very recently because of:

2013-11-04  Vladimir Makarov  <vmaka...@redhat.com>

    PR rtl-optimization/58968
    * lra-spills.c (return_regno_p): New function.
    (lra_final_code_change): Use it.

For the attached testcase compiled with -O2 -mavx:

--- t.s.0       2013-11-06 12:17:49.080691443 +0100
+++ t.s 2013-11-06 12:17:55.005691730 +0100
@@ -23,12 +23,14 @@
        call    foo
        testl   %eax, %eax
        jne     .L6
+       vzeroupper
        leave
        .cfi_remember_state
        .cfi_def_cfa 7, 8
        ret
 .L6:
        .cfi_restore_state
+       vzeroupper
        call    abort
        .cfi_endproc
 .LFE0:

Reply via email to