mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-13 04:30:23 +00:00
Target: change member from reference to pointer
This is a preliminary step to help ease the construction of CallLoweringInfo. Changing the construction to a chained function pattern requires that the parameter be nullable. However, rather than copying the vector, save a pointer rather than the reference to permit a late binding of the arguments. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@209080 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
a53c765745
commit
d825568843
@ -2111,7 +2111,7 @@ public:
|
||||
unsigned NumFixedArgs;
|
||||
CallingConv::ID CallConv;
|
||||
SDValue Callee;
|
||||
ArgListTy &Args;
|
||||
ArgListTy *Args;
|
||||
SelectionDAG &DAG;
|
||||
SDLoc DL;
|
||||
ImmutableCallSite *CS;
|
||||
@ -2131,7 +2131,7 @@ public:
|
||||
DoesNotReturn(cs.doesNotReturn()),
|
||||
IsReturnValueUsed(!cs.getInstruction()->use_empty()),
|
||||
IsTailCall(isTailCall), NumFixedArgs(FTy->getNumParams()),
|
||||
CallConv(cs.getCallingConv()), Callee(callee), Args(args), DAG(dag),
|
||||
CallConv(cs.getCallingConv()), Callee(callee), Args(&args), DAG(dag),
|
||||
DL(dl), CS(&cs) {}
|
||||
|
||||
/// Constructs a call lowering context based on the provided call
|
||||
@ -2145,7 +2145,12 @@ public:
|
||||
IsVarArg(isVarArg), IsInReg(isInReg), DoesNotReturn(doesNotReturn),
|
||||
IsReturnValueUsed(isReturnValueUsed), IsTailCall(isTailCall),
|
||||
NumFixedArgs(numFixedArgs), CallConv(callConv), Callee(callee),
|
||||
Args(args), DAG(dag), DL(dl), CS(nullptr) {}
|
||||
Args(&args), DAG(dag), DL(dl), CS(nullptr) {}
|
||||
|
||||
ArgListTy &getArgs() {
|
||||
assert(Args && "Arguments must be set before accessing them");
|
||||
return *Args;
|
||||
}
|
||||
};
|
||||
|
||||
/// This function lowers an abstract call to a function into an actual call.
|
||||
|
@ -7124,7 +7124,7 @@ TargetLowering::LowerCallTo(TargetLowering::CallLoweringInfo &CLI) const {
|
||||
// Handle all of the outgoing arguments.
|
||||
CLI.Outs.clear();
|
||||
CLI.OutVals.clear();
|
||||
ArgListTy &Args = CLI.Args;
|
||||
ArgListTy &Args = CLI.getArgs();
|
||||
for (unsigned i = 0, e = Args.size(); i != e; ++i) {
|
||||
SmallVector<EVT, 4> ValueVTs;
|
||||
ComputeValueVTs(*this, Args[i].Ty, ValueVTs);
|
||||
|
@ -2172,7 +2172,7 @@ SDValue ARM64TargetLowering::LowerCall(CallLoweringInfo &CLI,
|
||||
for (unsigned i = 0; i != NumArgs; ++i) {
|
||||
MVT ValVT = Outs[i].VT;
|
||||
// Get type of the original argument.
|
||||
EVT ActualVT = getValueType(CLI.Args[Outs[i].OrigArgIndex].Ty,
|
||||
EVT ActualVT = getValueType(CLI.getArgs()[Outs[i].OrigArgIndex].Ty,
|
||||
/*AllowUnknown*/ true);
|
||||
MVT ActualMVT = ActualVT.isSimple() ? ActualVT.getSimpleVT() : ValVT;
|
||||
ISD::ArgFlagsTy ArgFlags = Outs[i].Flags;
|
||||
|
@ -492,9 +492,9 @@ getOpndList(SmallVectorImpl<SDValue> &Ops,
|
||||
std::end(HardFloatLibCalls), Find))
|
||||
LookupHelper = false;
|
||||
}
|
||||
if (LookupHelper) Mips16HelperFunction =
|
||||
getMips16HelperFunction(CLI.RetTy, CLI.Args, NeedMips16Helper);
|
||||
|
||||
if (LookupHelper)
|
||||
Mips16HelperFunction =
|
||||
getMips16HelperFunction(CLI.RetTy, CLI.getArgs(), NeedMips16Helper);
|
||||
}
|
||||
|
||||
SDValue JumpTarget = Callee;
|
||||
|
@ -2329,7 +2329,7 @@ MipsTargetLowering::LowerCall(TargetLowering::CallLoweringInfo &CLI,
|
||||
|
||||
MipsCCInfo.analyzeCallOperands(Outs, IsVarArg,
|
||||
Subtarget->mipsSEUsesSoftFloat(),
|
||||
Callee.getNode(), CLI.Args);
|
||||
Callee.getNode(), CLI.getArgs());
|
||||
|
||||
// Get a count of how many bytes are to be pushed on the stack.
|
||||
unsigned NextStackOffset = CCInfo.getNextStackOffset();
|
||||
|
@ -636,7 +636,7 @@ SDValue NVPTXTargetLowering::LowerCall(TargetLowering::CallLoweringInfo &CLI,
|
||||
SDValue Chain = CLI.Chain;
|
||||
SDValue Callee = CLI.Callee;
|
||||
bool &isTailCall = CLI.IsTailCall;
|
||||
ArgListTy &Args = CLI.Args;
|
||||
ArgListTy &Args = CLI.getArgs();
|
||||
Type *retTy = CLI.RetTy;
|
||||
ImmutableCallSite *CS = CLI.CS;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user