Home | History | Annotate | Download | only in X86

Lines Matching full:callee

2003 //  callee should clean up the stack, not caller. Symbols should be also
2389 // Some CCs need callee pop.
2392 FuncInfo->setBytesToPopOnReturn(StackSize); // Callee pops everything.
2394 FuncInfo->setBytesToPopOnReturn(0); // Callee pops nothing.
2477 SDValue Callee = CLI.Callee;
2494 isTailCall = IsEligibleForTailCallOptimization(Callee, CallConv,
2609 // shadow reg if callee is a varargs function.
2642 // address of the callee into ECX. The value in ecx is used as target of
2643 // the tail jump. This is done to circumvent the ebx/callee-saved problem
2646 // ebx would be restored (since ebx is callee saved) before jumping to the
2650 GlobalAddressSDNode *G = dyn_cast<GlobalAddressSDNode>(Callee);
2653 Callee = LowerGlobalAddress(Callee, DAG);
2654 else if (isa<ExternalSymbolSDNode>(Callee))
2655 Callee = LowerExternalSymbol(Callee, DAG);
2755 } else if (GlobalAddressSDNode *G = dyn_cast<GlobalAddressSDNode>(Callee)) {
2756 // If the callee is a GlobalAddress node (quite common, every direct call
2797 Callee = DAG.getTargetGlobalAddress(GV, dl, getPointerTy(),
2802 Callee = DAG.getNode(X86ISD::WrapperRIP, dl, getPointerTy(), Callee);
2805 Callee = DAG.getLoad(getPointerTy(), dl, DAG.getEntryNode(), Callee,
2809 } else if (ExternalSymbolSDNode *S = dyn_cast<ExternalSymbolSDNode>(Callee)) {
2826 Callee = DAG.getTargetExternalSymbol(S->getSymbol(), getPointerTy(),
2841 Ops.push_back(Callee);
2878 NumBytesForCalleeToPush = NumBytes; // Callee pops everything
2881 // If this is a call to a struct-return function, the callee
2887 NumBytesForCalleeToPush = 0; // Callee pops nothing.
2909 // Like std call, callee cleans arguments, convention except that ECX is
2914 // * caller/callee are fastcc
2920 // If a tail called function callee has more arguments than the caller the
2924 // e.g. caller(arg1, arg2) calls callee(arg1, arg2,arg3,arg4)
3019 X86TargetLowering::IsEligibleForTailCallOptimization(SDValue Callee,
3036 // If the function return type is x86_fp80 and the callee return type is not,
3063 // Also avoid sibcall optimization if either caller or callee uses struct
3068 // An stdcall caller is expected to clean up its arguments; the callee
3144 // If the callee takes no arguments then go on to check the results of the
3186 // callee-saved registers are restored. These happen to be the same
3189 ((!isa<GlobalAddressSDNode>(Callee) &&
3190 !isa<ExternalSymbolSDNode>(Callee)) ||
3194 // for the callee.
3366 /// isCalleePop - Determines whether the callee is required to pop its
3367 /// own arguments. Callee pop is necessary to support tail calls.
12770 SDValue Callee = DAG.getExternalSymbol(LibcallName, getPointerTy());
12780 Callee, Args, DAG, dl);