summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM/ARMConstantIslandPass.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Some comments.Evan Cheng2007-01-311-2/+6
| | | | llvm-svn: 33707
* ConstPool island bug: watch out for cases where UserMI is the last MI of the BB.Evan Cheng2007-01-311-4/+16
| | | | llvm-svn: 33706
* - Added Thumb constpool island support.Evan Cheng2007-01-311-24/+17
| | | | | | | - Islands are inserted right after the user MI since thumb LDR cannot encode negative offset. llvm-svn: 33690
* - In thumb mode, if size of MachineFunction is >= 2048, force LR to beEvan Cheng2007-01-301-31/+99
| | | | | | | | | | | | | 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
* Factor GetInstSize() out of constpool island pass.Evan Cheng2007-01-291-69/+4
| | | | llvm-svn: 33644
* Thumb jumptable support.Evan Cheng2007-01-271-1/+9
| | | | llvm-svn: 33568
* Conditional branch being fixed up is not the last MI in the BB, there is aEvan Cheng2007-01-261-13/+51
| | | | | | | | | | | | | unconditional branch following it. Simply invert the condition and swap destinations if the conditional branch can reach the destination of the unconditional branch: beq L1 b L2 => bne L2 b L1 llvm-svn: 33548
* Make LABEL a builtin opcode.Jim Laskey2007-01-261-0/+2
| | | | llvm-svn: 33537
* SplitBlockBeforeInstr() insert a unconditional branch to the next BB. ThisEvan Cheng2007-01-261-2/+6
| | | | | | | is unnecessary when we are fixing up a conditional branch since we will be adding a unconditional branch to the destination of the original branch. llvm-svn: 33517
* Need to scan the function for branches even if there aren't any constants.Evan Cheng2007-01-261-3/+2
| | | | llvm-svn: 33515
* Forgot to update this.Evan Cheng2007-01-251-1/+1
| | | | llvm-svn: 33512
* Add comment, fix typo, reduce memory usage, etc.Evan Cheng2007-01-251-9/+14
| | | | llvm-svn: 33510
* Doh. Skip JT branches.Evan Cheng2007-01-251-1/+2
| | | | llvm-svn: 33501
* Added (preliminary) branch shortening capability to constantpool island pass.Evan Cheng2007-01-251-7/+130
| | | | llvm-svn: 33497
* Use PC relative ldr to load from a constantpool in Thumb mode.Evan Cheng2007-01-241-0/+3
| | | | llvm-svn: 33484
* ARM backend contribution from Apple.Evan Cheng2007-01-191-0/+490
llvm-svn: 33353
OpenPOWER on IntegriCloud