diff options
author | Bill Wendling <isanbard@gmail.com> | 2009-11-10 22:14:04 +0000 |
---|---|---|
committer | Bill Wendling <isanbard@gmail.com> | 2009-11-10 22:14:04 +0000 |
commit | b19a5e9be6097eab311678ccbd9e046c72f7e052 (patch) | |
tree | 167c1f2b0e3219c35f4c2bb045b6cbf2e9423824 /lib/Transforms/Utils/Local.cpp | |
parent | 6daf99bf8fa7572fac271bbcd0a8da44ffc2df44 (diff) |
Modify how the prologue encoded the "move" information for the FDE. GCC
generates a sequence similar to this:
__Z4funci:
LFB2:
mflr r0
LCFI0:
stmw r30,-8(r1)
LCFI1:
stw r0,8(r1)
LCFI2:
stwu r1,-80(r1)
LCFI3:
mr r30,r1
LCFI4:
where LCFI3 and LCFI4 are used by the FDE to indicate what the FP, LR, and other
things are. We generated something more like this:
Leh_func_begin1:
mflr r0
stw r31, 20(r1)
stw r0, 8(r1)
Llabel1:
stwu r1, -80(r1)
Llabel2:
mr r31, r1
Note that we are missing the "mr" instruction. This patch makes it more like the
GCC output.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86729 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Transforms/Utils/Local.cpp')
0 files changed, 0 insertions, 0 deletions