diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2006-10-18 12:03:07 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2006-10-18 12:03:07 +0000 |
commit | b21e8d2e12438d24f5f479e8fd93c4870b0a437e (patch) | |
tree | ac0655fdaf3734f68f81eeb6a5c0054dbb9c87fe | |
parent | 24b7ac303cadf1ec7bf0256403d1750496628c2c (diff) | |
download | bcm5719-llvm-b21e8d2e12438d24f5f479e8fd93c4870b0a437e.tar.gz bcm5719-llvm-b21e8d2e12438d24f5f479e8fd93c4870b0a437e.zip |
implement CallingConv::Fast as CallingConv::C
llvm-svn: 31034
-rw-r--r-- | llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp | 4 | ||||
-rw-r--r-- | llvm/test/Regression/CodeGen/ARM/call.ll | 4 |
2 files changed, 5 insertions, 3 deletions
diff --git a/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp b/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp index 72d25c8dcf6..283d0f18c79 100644 --- a/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp +++ b/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp @@ -294,7 +294,9 @@ public: static SDOperand LowerCALL(SDOperand Op, SelectionDAG &DAG) { SDOperand Chain = Op.getOperand(0); unsigned CallConv = cast<ConstantSDNode>(Op.getOperand(1))->getValue(); - assert(CallConv == CallingConv::C && "unknown calling convention"); + assert((CallConv == CallingConv::C || + CallConv == CallingConv::Fast) + && "unknown calling convention"); bool isVarArg = cast<ConstantSDNode>(Op.getOperand(2))->getValue() != 0; bool isTailCall = cast<ConstantSDNode>(Op.getOperand(3))->getValue() != 0; SDOperand Callee = Op.getOperand(4); diff --git a/llvm/test/Regression/CodeGen/ARM/call.ll b/llvm/test/Regression/CodeGen/ARM/call.ll index 890018396e8..316cb548bbf 100644 --- a/llvm/test/Regression/CodeGen/ARM/call.ll +++ b/llvm/test/Regression/CodeGen/ARM/call.ll @@ -2,9 +2,9 @@ void %f() { entry: call void %g( int 1, int 2, int 3, int 4 ) - call void %h() + call fastcc void %h() ret void } declare void %g(int, int, int, int) -declare void %h() +declare fastcc void %h() |