summaryrefslogtreecommitdiff
path: root/lib/Target/X86/X86CallingConv.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Target/X86/X86CallingConv.h')
-rw-r--r--lib/Target/X86/X86CallingConv.h27
1 files changed, 0 insertions, 27 deletions
diff --git a/lib/Target/X86/X86CallingConv.h b/lib/Target/X86/X86CallingConv.h
index 040da3535e..e76f9fda2d 100644
--- a/lib/Target/X86/X86CallingConv.h
+++ b/lib/Target/X86/X86CallingConv.h
@@ -29,33 +29,6 @@ inline bool CC_X86_AnyReg_Error(unsigned &, MVT &, MVT &,
return false;
}
-inline bool CC_X86_CDeclMethod_SRet(unsigned &ValNo, MVT &ValVT, MVT &LocVT,
- CCValAssign::LocInfo &LocInfo,
- ISD::ArgFlagsTy &ArgFlags, CCState &State) {
- // Swap the order of the first two parameters if the first parameter is sret.
- if (ArgFlags.isSRet()) {
- assert(ValNo == 0);
- assert(ValVT == MVT::i32);
- State.AllocateStack(8, 4);
- State.addLoc(CCValAssign::getCustomMem(ValNo, ValVT, 4, LocVT, LocInfo));
-
- // Indicate that we need to swap the order of the first and second
- // parameters by "allocating" register zero. There are no register
- // parameters with cdecl methods, so we can use this to communicate to the
- // next call.
- State.AllocateReg(1);
- return true;
- } else if (ValNo == 1 && State.isAllocated(1)) {
- assert(ValVT == MVT::i32 && "non-i32-sized this param unsupported");
- // Stack was already allocated while processing sret.
- State.addLoc(CCValAssign::getCustomMem(ValNo, ValVT, 0, LocVT, LocInfo));
- return true;
- }
-
- // All other args use the C calling convention.
- return false;
-}
-
} // End llvm namespace
#endif