summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2006-01-27 23:39:00 +0000
committerChris Lattner <sabre@nondot.org>2006-01-27 23:39:00 +0000
commit2c00db82bde5c60d05e2362ea69b92eb30279eff (patch)
treed41bbd3701c823d63109a4dfe370b2aa6155c676 /llvm/lib/Target
parentf424a665246775780614be3ea6fb2a22bac93d54 (diff)
downloadbcm5719-llvm-2c00db82bde5c60d05e2362ea69b92eb30279eff.tar.gz
bcm5719-llvm-2c00db82bde5c60d05e2362ea69b92eb30279eff.zip
Switch to AlphaISD::CALL instead of ISD::CALL
llvm-svn: 25718
Diffstat (limited to 'llvm/lib/Target')
-rw-r--r--llvm/lib/Target/Alpha/AlphaISelDAGToDAG.cpp3
-rw-r--r--llvm/lib/Target/Alpha/AlphaISelLowering.cpp8
-rw-r--r--llvm/lib/Target/Alpha/AlphaISelLowering.h3
3 files changed, 10 insertions, 4 deletions
diff --git a/llvm/lib/Target/Alpha/AlphaISelDAGToDAG.cpp b/llvm/lib/Target/Alpha/AlphaISelDAGToDAG.cpp
index 6d71a2cb61f..2b83f39bb47 100644
--- a/llvm/lib/Target/Alpha/AlphaISelDAGToDAG.cpp
+++ b/llvm/lib/Target/Alpha/AlphaISelDAGToDAG.cpp
@@ -161,8 +161,7 @@ SDOperand AlphaDAGToDAGISel::Select(SDOperand Op) {
switch (N->getOpcode()) {
default: break;
- case ISD::TAILCALL:
- case ISD::CALL: return SelectCALL(Op);
+ case AlphaISD::CALL: return SelectCALL(Op);
case ISD::FrameIndex: {
int FI = cast<FrameIndexSDNode>(N)->getIndex();
diff --git a/llvm/lib/Target/Alpha/AlphaISelLowering.cpp b/llvm/lib/Target/Alpha/AlphaISelLowering.cpp
index d6b1bb314e1..ac21b563b4b 100644
--- a/llvm/lib/Target/Alpha/AlphaISelLowering.cpp
+++ b/llvm/lib/Target/Alpha/AlphaISelLowering.cpp
@@ -164,6 +164,7 @@ const char *AlphaTargetLowering::getTargetNodeName(unsigned Opcode) const {
case AlphaISD::GPRelLo: return "Alpha::GPRelLo";
case AlphaISD::RelLit: return "Alpha::RelLit";
case AlphaISD::GlobalBaseReg: return "Alpha::GlobalBaseReg";
+ case AlphaISD::CALL: return "Alpha::CALL";
case AlphaISD::DivCall: return "Alpha::DivCall";
case AlphaISD::LDQ_: return "Alpha::LDQ_";
case AlphaISD::LDT_: return "Alpha::LDT_";
@@ -357,8 +358,11 @@ AlphaTargetLowering::LowerCallTo(SDOperand Chain,
RetVals.push_back(ActualRetTyVT);
RetVals.push_back(MVT::Other);
- SDOperand TheCall = SDOperand(DAG.getCall(RetVals,
- Chain, Callee, args_to_use), 0);
+ std::vector<SDOperand> Ops;
+ Ops.push_back(Chain);
+ Ops.push_back(Callee);
+ Ops.insert(Ops.end(), args_to_use.begin(), args_to_use.end());
+ SDOperand TheCall = DAG.getNode(AlphaISD::CALL, RetVals, Ops);
Chain = TheCall.getValue(RetTyVT != MVT::isVoid);
Chain = DAG.getNode(ISD::CALLSEQ_END, MVT::Other, Chain,
DAG.getConstant(NumBytes, getPointerTy()));
diff --git a/llvm/lib/Target/Alpha/AlphaISelLowering.h b/llvm/lib/Target/Alpha/AlphaISelLowering.h
index aedaf395c6e..33f87ce8187 100644
--- a/llvm/lib/Target/Alpha/AlphaISelLowering.h
+++ b/llvm/lib/Target/Alpha/AlphaISelLowering.h
@@ -37,6 +37,9 @@ namespace llvm {
/// GlobalBaseReg - used to restore the GOT ptr
GlobalBaseReg,
+
+ /// CALL - Normal call.
+ CALL,
/// DIVCALL - used for special library calls for div and rem
DivCall,
OpenPOWER on IntegriCloud