Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Some comments. | Evan Cheng | 2007-01-31 | 1 | -2/+6 | |
| | | | | llvm-svn: 33707 | |||||
* | ConstPool island bug: watch out for cases where UserMI is the last MI of the BB. | Evan Cheng | 2007-01-31 | 1 | -4/+16 | |
| | | | | llvm-svn: 33706 | |||||
* | - Added Thumb constpool island support. | Evan Cheng | 2007-01-31 | 1 | -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 be | Evan Cheng | 2007-01-30 | 1 | -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 Cheng | 2007-01-29 | 1 | -69/+4 | |
| | | | | llvm-svn: 33644 | |||||
* | Thumb jumptable support. | Evan Cheng | 2007-01-27 | 1 | -1/+9 | |
| | | | | llvm-svn: 33568 | |||||
* | Conditional branch being fixed up is not the last MI in the BB, there is a | Evan Cheng | 2007-01-26 | 1 | -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 Laskey | 2007-01-26 | 1 | -0/+2 | |
| | | | | llvm-svn: 33537 | |||||
* | SplitBlockBeforeInstr() insert a unconditional branch to the next BB. This | Evan Cheng | 2007-01-26 | 1 | -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 Cheng | 2007-01-26 | 1 | -3/+2 | |
| | | | | llvm-svn: 33515 | |||||
* | Forgot to update this. | Evan Cheng | 2007-01-25 | 1 | -1/+1 | |
| | | | | llvm-svn: 33512 | |||||
* | Add comment, fix typo, reduce memory usage, etc. | Evan Cheng | 2007-01-25 | 1 | -9/+14 | |
| | | | | llvm-svn: 33510 | |||||
* | Doh. Skip JT branches. | Evan Cheng | 2007-01-25 | 1 | -1/+2 | |
| | | | | llvm-svn: 33501 | |||||
* | Added (preliminary) branch shortening capability to constantpool island pass. | Evan Cheng | 2007-01-25 | 1 | -7/+130 | |
| | | | | llvm-svn: 33497 | |||||
* | Use PC relative ldr to load from a constantpool in Thumb mode. | Evan Cheng | 2007-01-24 | 1 | -0/+3 | |
| | | | | llvm-svn: 33484 | |||||
* | ARM backend contribution from Apple. | Evan Cheng | 2007-01-19 | 1 | -0/+490 | |
llvm-svn: 33353 |