[LLVMbugs] [Bug 11031] New: [AVX, perf] %rbp unnecessarily saved and restored in simple function

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Wed Sep 28 06:15:30 PDT 2011


http://llvm.org/bugs/show_bug.cgi?id=11031

           Summary: [AVX,perf] %rbp unnecessarily saved and restored in
                    simple function
           Product: new-bugs
           Version: trunk
          Platform: PC
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P
         Component: new bugs
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: matt at pharr.org
                CC: llvmbugs at cs.uiuc.edu


Created an attachment (id=7370)
 --> (http://llvm.org/bugs/attachment.cgi?id=7370)
test case

With the attached example, llc -mattr=+avx generates the following assembly.  I
believe that the initial pushq/movq and the ending popq are unnecessary.


_Floor2Int___f:                         ## @Floor2Int___f
## BB#0:                                ## %allocas
    pushq    %rbp
    movq    %rsp, %rbp
    vroundps    $9, %ymm0, %ymm2
    vxorps    %ymm0, %ymm0, %ymm0
    vblendvps    %ymm1, %ymm2, %ymm0, %ymm2
    vcvttps2dq    %ymm2, %ymm2
    vblendvps    %ymm1, %ymm2, %ymm0, %ymm0
    popq    %rbp
    ret

-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the llvm-bugs mailing list