mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-02-19 23:29:20 +00:00
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
This commit is contained in:
parent
9e23336d0c
commit
d75686a471
@ -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));
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user