diff options
Diffstat (limited to 'llvm')
| -rw-r--r-- | llvm/lib/Target/SparcV8/SparcV8ISelDAGToDAG.cpp | 5 | 
1 files changed, 5 insertions, 0 deletions
| diff --git a/llvm/lib/Target/SparcV8/SparcV8ISelDAGToDAG.cpp b/llvm/lib/Target/SparcV8/SparcV8ISelDAGToDAG.cpp index e09b308e1fa..c800c5e9df9 100644 --- a/llvm/lib/Target/SparcV8/SparcV8ISelDAGToDAG.cpp +++ b/llvm/lib/Target/SparcV8/SparcV8ISelDAGToDAG.cpp @@ -266,6 +266,11 @@ SparcV8TargetLowering::LowerArguments(Function &F, SelectionDAG &DAG) {          Arg = DAG.getNode(ISD::BIT_CONVERT, MVT::f32, Arg);          ArgValues.push_back(Arg); +      } else { +        int FrameIdx = MF.getFrameInfo()->CreateFixedObject(4, ArgOffset); +        SDOperand FIPtr = DAG.getFrameIndex(FrameIdx, MVT::i32); +        SDOperand Load = DAG.getLoad(MVT::f32, Root, FIPtr, DAG.getSrcValue(0)); +        ArgValues.push_back(Load);        }        ArgOffset += 4;        break; | 

