diff options
author | Dale Johannesen <dalej@apple.com> | 2008-03-12 23:40:01 +0000 |
---|---|---|
committer | Dale Johannesen <dalej@apple.com> | 2008-03-12 23:40:01 +0000 |
commit | d75686a471ee6ed5260e29d22d54f15152bbc9b4 (patch) | |
tree | dae708367e891060a9c87c4205b416538a46a00a | |
parent | 9e23336d0c99fc5cae04037ead6d8f2b677e8764 (diff) |
Do not promote float params to double in varargs
calls here. This was done earlier for params in
the varargs part of the params; any float params
that survive to here are in the non-varargs part,
and must not be promoted.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48310 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Target/PowerPC/PPCISelLowering.cpp | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/lib/Target/PowerPC/PPCISelLowering.cpp b/lib/Target/PowerPC/PPCISelLowering.cpp index cd87bba7b2..8138b78d5e 100644 --- a/lib/Target/PowerPC/PPCISelLowering.cpp +++ b/lib/Target/PowerPC/PPCISelLowering.cpp @@ -1898,12 +1898,6 @@ SDOperand PPCTargetLowering::LowerCALL(SDOperand Op, SelectionDAG &DAG, break; case MVT::f32: case MVT::f64: - if (isVarArg) { - // Float varargs need to be promoted to double. - if (Arg.getValueType() == MVT::f32) - Arg = DAG.getNode(ISD::FP_EXTEND, MVT::f64, Arg); - } - if (FPR_idx != NumFPRs) { RegsToPass.push_back(std::make_pair(FPR[FPR_idx++], Arg)); |