diff options
| author | Brendon Cahoon <bcahoon@codeaurora.org> | 2012-05-14 19:35:42 +0000 |
|---|---|---|
| committer | Brendon Cahoon <bcahoon@codeaurora.org> | 2012-05-14 19:35:42 +0000 |
| commit | f6b687e5d1f196ccc42d361497fe4be738d70c24 (patch) | |
| tree | fbe1f7341f71d22c8e549ec6f00e22ec85aa1958 /llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp | |
| parent | 164fe18cfe64cdf06988dd8eba1f33dca17a520e (diff) | |
| download | bcm5719-llvm-f6b687e5d1f196ccc42d361497fe4be738d70c24.tar.gz bcm5719-llvm-f6b687e5d1f196ccc42d361497fe4be738d70c24.zip | |
Revert 156634 upon request until code improvement changes are made.
llvm-svn: 156775
Diffstat (limited to 'llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp')
| -rw-r--r-- | llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp | 31 |
1 files changed, 6 insertions, 25 deletions
diff --git a/llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp b/llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp index a22555d8b64..5499134eb98 100644 --- a/llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp +++ b/llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp @@ -94,7 +94,6 @@ public: SDNode *SelectConstant(SDNode *N); SDNode *SelectConstantFP(SDNode *N); SDNode *SelectAdd(SDNode *N); - bool isConstExtProfitable(SDNode *N) const; // Include the pieces autogenerated from the target description. #include "HexagonGenDAGISel.inc" @@ -313,13 +312,9 @@ SDNode *HexagonDAGToDAGISel::SelectBaseOffsetLoad(LoadSDNode *LD, DebugLoc dl) { cast<GlobalAddressSDNode>(Base)->getGlobal(); SDValue TargAddr = CurDAG->getTargetGlobalAddress(GV, dl, PointerTy, 0); - SDNode* NewBase; - if (Subtarget.hasV4TOps()) - NewBase = CurDAG->getMachineNode(Hexagon::TFRI_V4, - dl, PointerTy, TargAddr); - else - NewBase = CurDAG->getMachineNode(Hexagon::CONST32_set, - dl, PointerTy, TargAddr); + SDNode* NewBase = CurDAG->getMachineNode(Hexagon::CONST32_set, + dl, PointerTy, + TargAddr); // Figure out base + offset opcode if (LoadedVT == MVT::i64) Opcode = Hexagon::LDrid_indexed; else if (LoadedVT == MVT::i32) Opcode = Hexagon::LDriw_indexed; @@ -691,13 +686,9 @@ SDNode *HexagonDAGToDAGISel::SelectBaseOffsetStore(StoreSDNode *ST, cast<GlobalAddressSDNode>(Base)->getGlobal(); SDValue TargAddr = CurDAG->getTargetGlobalAddress(GV, dl, PointerTy, 0); - SDNode* NewBase; - if (Subtarget.hasV4TOps()) - NewBase = CurDAG->getMachineNode(Hexagon::TFRI_V4, - dl, PointerTy, TargAddr); - else - NewBase = CurDAG->getMachineNode(Hexagon::CONST32_set, - dl, PointerTy, TargAddr); + SDNode* NewBase = CurDAG->getMachineNode(Hexagon::CONST32_set, + dl, PointerTy, + TargAddr); // Figure out base + offset opcode if (StoredVT == MVT::i64) Opcode = Hexagon::STrid_indexed; @@ -1516,13 +1507,3 @@ SelectInlineAsmMemoryOperand(const SDValue &Op, char ConstraintCode, OutOps.push_back(Op1); return false; } - -bool HexagonDAGToDAGISel::isConstExtProfitable(SDNode *N) const { - unsigned UseCount = 0; - for (SDNode::use_iterator I = N->use_begin(), E = N->use_end(); I != E; ++I) { - UseCount++; - } - - return (UseCount <= 1); - -} |

