aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/CloneModule.cpp
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2007-01-30 01:18:38 +0000
committerEvan Cheng <evan.cheng@apple.com>2007-01-30 01:18:38 +0000
commit7fa6964dc2df14a626fc5b1c90f9e747d60defef (patch)
tree7fd23547156a396521837101fc97d4a9bc7c9e68 /llvm/lib/Transforms/Utils/CloneModule.cpp
parent863736b0ad3fd26fc60f8d9ba0ff24cfc92a5624 (diff)
downloadllvm-7fa6964dc2df14a626fc5b1c90f9e747d60defef.zip
llvm-7fa6964dc2df14a626fc5b1c90f9e747d60defef.tar.gz
llvm-7fa6964dc2df14a626fc5b1c90f9e747d60defef.tar.bz2
- In thumb mode, if size of MachineFunction is >= 2048, force LR to be
spilled (if it is not already). - If LR is spilled, use BL to implement far jumps. LR is not used as a GPR in thumb mode so it can be clobbered if it is properly spilled / restored in prologue / epilogue. - If LR is force spilled but no far jump has been emitted, try undo'ing the spill by: push lr -> delete pop pc -> bx lr llvm-svn: 33650
Diffstat (limited to 'llvm/lib/Transforms/Utils/CloneModule.cpp')
0 files changed, 0 insertions, 0 deletions