[LLVMbugs] [Bug 18160] New: [ARM Backend] Folding SP Update should depends on frame-pointer elimination

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Fri Dec 6 12:08:34 PST 2013


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

            Bug ID: 18160
           Summary: [ARM Backend] Folding SP Update should depends on
                    frame-pointer elimination
           Product: new-bugs
           Version: unspecified
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: new bugs
          Assignee: unassignedbugs at nondot.org
          Reporter: zhaoshiz at codeaurora.org
                CC: llvmbugs at cs.uiuc.edu, t.p.northover at gmail.com
    Classification: Unclassified

Created attachment 11679
  --> http://llvm.org/bugs/attachment.cgi?id=11679&action=edit
LLVM-IR test case

Currently there're two frontend flags controls fp-elim:

-fomit-frame-pointer
-momit-leaf-frame-pointer

An example:

   0:    e92d48f0     push    {r4, r5, r6, r7, fp, lr}
>  4:	e28db010 	add	fp, sp, #16
>  8:	ed2d8b02 	vpush	{d8}
>  c:	e24dd018 	sub	sp, sp, #24
        ...
 140:    e24bd018     sub    sp, fp, #24
 144:    ecbd8b02     vpop    {d8}
 148:    e8bd88f0     pop    {r4, r5, r6, r7, fp, pc}

when SP-update-folding is enabled without fp-elim, the above ASM becomes:

   0:    e92d48f0     push    {r4, r5, r6, r7, fp, lr}
>  4:	e28db028 	add	fp, sp, #40	; 0x28
>  8:	ed2d5b08 	vpush	{d5-d8}
        ...
 13c:    e24bd018     sub    sp, fp, #24
 140:    ecbd8b02     vpop    {d8}
 144:    e8bd88f0     pop    {r4, r5, r6, r7, fp, pc}

We can make fp-elim part of Oz or have SP-update-folding check for fp-elim
attributes along with MinSize.

p.s.: Tim, this should be the last one, :)

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20131206/6383e5d9/attachment.html>


More information about the llvm-bugs mailing list