diff options
| author | Rafael Espindola <rafael.espindola@gmail.com> | 2006-10-17 18:04:53 +0000 |
|---|---|---|
| committer | Rafael Espindola <rafael.espindola@gmail.com> | 2006-10-17 18:04:53 +0000 |
| commit | 19398ec86e102d2d7f050bfe4429aef55a6911b2 (patch) | |
| tree | e32023a59a207d86cac69b1950c0d69a584c6422 /llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp | |
| parent | d24b913a613b7f6be2c04716bbbe8e58e61f793e (diff) | |
| download | bcm5719-llvm-19398ec86e102d2d7f050bfe4429aef55a6911b2.tar.gz bcm5719-llvm-19398ec86e102d2d7f050bfe4429aef55a6911b2.zip | |
initial implementation of addressing mode 5
llvm-svn: 31002
Diffstat (limited to 'llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp')
| -rw-r--r-- | llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp b/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp index 905d9620e20..13dd33cc902 100644 --- a/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp +++ b/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp @@ -737,6 +737,7 @@ public: bool SelectAddrRegImm(SDOperand N, SDOperand &Offset, SDOperand &Base); bool SelectAddrMode1(SDOperand N, SDOperand &Arg, SDOperand &Shift, SDOperand &ShiftType); + bool SelectAddrMode5(SDOperand N, SDOperand &Arg, SDOperand &Offset); // Include the pieces autogenerated from the target description. #include "ARMGenDAGISel.inc" @@ -835,6 +836,14 @@ bool ARMDAGToDAGISel::SelectAddrMode1(SDOperand N, return true; } +bool ARMDAGToDAGISel::SelectAddrMode5(SDOperand N, SDOperand &Arg, + SDOperand &Offset) { + //TODO: detect offset + Offset = CurDAG->getTargetConstant(0, MVT::i32); + Arg = N; + return true; +} + //register plus/minus 12 bit offset bool ARMDAGToDAGISel::SelectAddrRegImm(SDOperand N, SDOperand &Offset, SDOperand &Base) { |

