summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp
diff options
context:
space:
mode:
authorBrendon Cahoon <bcahoon@codeaurora.org>2012-05-14 19:35:42 +0000
committerBrendon Cahoon <bcahoon@codeaurora.org>2012-05-14 19:35:42 +0000
commitf6b687e5d1f196ccc42d361497fe4be738d70c24 (patch)
treefbe1f7341f71d22c8e549ec6f00e22ec85aa1958 /llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp
parent164fe18cfe64cdf06988dd8eba1f33dca17a520e (diff)
downloadbcm5719-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.cpp31
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);
-
-}
OpenPOWER on IntegriCloud