|
| ImmutableCallSite ()=default |
|
| ImmutableCallSite (const CallInst *CI) |
|
| ImmutableCallSite (const InvokeInst *II) |
|
| ImmutableCallSite (const Instruction *II) |
|
| ImmutableCallSite (const Value *V) |
|
| ImmutableCallSite (CallSite CS) |
|
bool | isCall () const |
| Return true if a CallInst is enclosed. More...
|
|
bool | isInvoke () const |
| Return true if a InvokeInst is enclosed. More...
|
|
const Instruction * | getInstruction () const |
|
const Instruction * | operator-> () const |
|
| operator bool () const |
|
const BasicBlock * | getParent () const |
| Get the basic block containing the call site. More...
|
|
const Value * | getCalledValue () const |
| Return the pointer to function that is being called. More...
|
|
const Function * | getCalledFunction () const |
| Return the function being called if this is a direct call, otherwise return null (if it's an indirect call). More...
|
|
bool | isIndirectCall () const |
| Return true if the callsite is an indirect call. More...
|
|
void | setCalledFunction (Value *V) |
| Set the callee to the specified value. More...
|
|
Intrinsic::ID | getIntrinsicID () const |
| Return the intrinsic ID of the intrinsic called by this CallSite, or Intrinsic::not_intrinsic if the called function is not an intrinsic, or if this CallSite is an indirect call. More...
|
|
bool | isCallee (Value::const_user_iterator UI) const |
| Determine whether the passed iterator points to the callee operand's Use. More...
|
|
bool | isCallee (const Use *U) const |
| Determine whether this Use is the callee operand's Use. More...
|
|
bool | isArgOperand (Value::const_user_iterator UI) const |
| Determine whether the passed iterator points to an argument operand. More...
|
|
bool | isArgOperand (const Use *U) const |
| Determine whether the passed use points to an argument operand. More...
|
|
bool | isBundleOperand (Value::const_user_iterator UI) const |
| Determine whether the passed iterator points to a bundle operand. More...
|
|
bool | isBundleOperand (const Use *U) const |
| Determine whether the passed use points to a bundle operand. More...
|
|
bool | isBundleOperand (unsigned Idx) const |
|
bool | isDataOperand (Value::const_user_iterator UI) const |
| Determine whether the passed iterator points to a data operand. More...
|
|
bool | isDataOperand (const Use *U) const |
| Determine whether the passed use points to a data operand. More...
|
|
const Value * | getArgument (unsigned ArgNo) const |
|
void | setArgument (unsigned ArgNo, Value *newVal) |
|
unsigned | getArgumentNo (Value::const_user_iterator I) const |
| Given a value use iterator, returns the argument that corresponds to it. More...
|
|
unsigned | getArgumentNo (const Use *U) const |
| Given a use for an argument, get the argument number that corresponds to it. More...
|
|
iterator_range< User::const_op_iterator > | args () const |
|
bool | arg_empty () const |
|
unsigned | arg_size () const |
|
unsigned | getDataOperandNo (Value::const_user_iterator UI) const |
| Given a value use iterator, return the data operand corresponding to it. More...
|
|
unsigned | getDataOperandNo (const Use *U) const |
| Given a use for a data operand, get the data operand number that corresponds to it. More...
|
|
User::const_op_iterator | data_operands_begin () const |
| data_operands_begin/data_operands_end - Return iterators iterating over the call / invoke argument list and bundle operands. More...
|
|
User::const_op_iterator | data_operands_end () const |
|
iterator_range< User::const_op_iterator > | data_ops () const |
|
bool | data_operands_empty () const |
|
unsigned | data_operands_size () const |
|
Type * | getType () const |
| Return the type of the instruction that generated this call site. More...
|
|
const Function * | getCaller () const |
| Return the caller function for this call site. More...
|
|
bool | isMustTailCall () const |
| Tests if this call site must be tail call optimized. More...
|
|
bool | isTailCall () const |
| Tests if this call site is marked as a tail call. More...
|
|
unsigned | getNumArgOperands () const |
|
const Value * | getArgOperand (unsigned i) const |
|
const Value * | getReturnedArgOperand () const |
|
bool | isInlineAsm () const |
|
CallingConv::ID | getCallingConv () const |
| Get the calling convention of the call. More...
|
|
void | setCallingConv (CallingConv::ID CC) |
| Set the calling convention of the call. More...
|
|
FunctionType * | getFunctionType () const |
|
void | mutateFunctionType (FunctionType *Ty) const |
|
AttributeList | getAttributes () const |
| Get the parameter attributes of the call. More...
|
|
void | setAttributes (AttributeList PAL) |
| Set the parameter attributes of the call. More...
|
|
void | addAttribute (unsigned i, Attribute::AttrKind Kind) |
|
void | addAttribute (unsigned i, Attribute Attr) |
|
void | addParamAttr (unsigned ArgNo, Attribute::AttrKind Kind) |
|
void | removeAttribute (unsigned i, Attribute::AttrKind Kind) |
|
void | removeAttribute (unsigned i, StringRef Kind) |
|
void | removeParamAttr (unsigned ArgNo, Attribute::AttrKind Kind) |
|
bool | hasFnAttr (Attribute::AttrKind Kind) const |
| Return true if this function has the given attribute. More...
|
|
bool | hasFnAttr (StringRef Kind) const |
| Return true if this function has the given attribute. More...
|
|
bool | hasRetAttr (Attribute::AttrKind Kind) const |
| Return true if this return value has the given attribute. More...
|
|
bool | paramHasAttr (unsigned ArgNo, Attribute::AttrKind Kind) const |
| Return true if the call or the callee has the given attribute. More...
|
|
Attribute | getAttribute (unsigned i, Attribute::AttrKind Kind) const |
|
Attribute | getAttribute (unsigned i, StringRef Kind) const |
|
bool | dataOperandHasImpliedAttr (unsigned i, Attribute::AttrKind Kind) const |
| Return true if the data operand at index i directly or indirectly has the attribute A . More...
|
|
unsigned | getRetAlignment () const |
| Extract the alignment of the return value. More...
|
|
unsigned | getParamAlignment (unsigned ArgNo) const |
| Extract the alignment for a call or parameter (0=unknown). More...
|
|
uint64_t | getDereferenceableBytes (unsigned i) const |
| Extract the number of dereferenceable bytes for a call or parameter (0=unknown). More...
|
|
uint64_t | getDereferenceableOrNullBytes (unsigned i) const |
| Extract the number of dereferenceable_or_null bytes for a call or parameter (0=unknown). More...
|
|
bool | returnDoesNotAlias () const |
| Determine if the return value is marked with NoAlias attribute. More...
|
|
bool | isNoBuiltin () const |
| Return true if the call should not be treated as a call to a builtin. More...
|
|
bool | isStrictFP () const |
| Return true if the call requires strict floating point semantics. More...
|
|
bool | isNoInline () const |
| Return true if the call should not be inlined. More...
|
|
void | setIsNoInline (bool Value=true) |
|
bool | doesNotAccessMemory () const |
| Determine if the call does not access memory. More...
|
|
bool | doesNotAccessMemory (unsigned OpNo) const |
|
void | setDoesNotAccessMemory () |
|
bool | onlyReadsMemory () const |
| Determine if the call does not access or only reads memory. More...
|
|
bool | onlyReadsMemory (unsigned OpNo) const |
|
void | setOnlyReadsMemory () |
|
bool | doesNotReadMemory () const |
| Determine if the call does not access or only writes memory. More...
|
|
bool | doesNotReadMemory (unsigned OpNo) const |
|
void | setDoesNotReadMemory () |
|
bool | onlyAccessesArgMemory () const |
| Determine if the call can access memmory only using pointers based on its arguments. More...
|
|
void | setOnlyAccessesArgMemory () |
|
bool | onlyAccessesInaccessibleMemory () const |
| Determine if the function may only access memory that is inaccessible from the IR. More...
|
|
void | setOnlyAccessesInaccessibleMemory () |
|
bool | onlyAccessesInaccessibleMemOrArgMem () const |
| Determine if the function may only access memory that is either inaccessible from the IR or pointed to by its arguments. More...
|
|
void | setOnlyAccessesInaccessibleMemOrArgMem () |
|
bool | doesNotReturn () const |
| Determine if the call cannot return. More...
|
|
void | setDoesNotReturn () |
|
bool | doesNotThrow () const |
| Determine if the call cannot unwind. More...
|
|
void | setDoesNotThrow () |
|
bool | cannotDuplicate () const |
| Determine if the call can be duplicated. More...
|
|
void | setCannotDuplicate () |
|
bool | isConvergent () const |
| Determine if the call is convergent. More...
|
|
void | setConvergent () |
|
void | setNotConvergent () |
|
unsigned | getNumOperandBundles () const |
|
bool | hasOperandBundles () const |
|
unsigned | getBundleOperandsStartIndex () const |
|
unsigned | getBundleOperandsEndIndex () const |
|
unsigned | getNumTotalBundleOperands () const |
|
OperandBundleUse | getOperandBundleAt (unsigned Index) const |
|
Optional< OperandBundleUse > | getOperandBundle (StringRef Name) const |
|
Optional< OperandBundleUse > | getOperandBundle (uint32_t ID) const |
|
unsigned | countOperandBundlesOfType (uint32_t ID) const |
|
User::const_op_iterator | arg_begin () const |
|
User::const_op_iterator | arg_end () const |
|
void | getOperandBundlesAsDefs (SmallVectorImpl< OperandBundleDef > &Defs) const |
|
bool | doesNotCapture (unsigned OpNo) const |
| Determine whether this data operand is not captured. More...
|
|
bool | isByValArgument (unsigned ArgNo) const |
| Determine whether this argument is passed by value. More...
|
|
bool | isInAllocaArgument (unsigned ArgNo) const |
| Determine whether this argument is passed in an alloca. More...
|
|
bool | isByValOrInAllocaArgument (unsigned ArgNo) const |
| Determine whether this argument is passed by value or in an alloca. More...
|
|
bool | hasInAllocaArgument () const |
| Determine if there are is an inalloca argument. More...
|
|
bool | isReturnNonNull () const |
| Return true if the return value is known to be not null. More...
|
|
bool | hasArgument (const Value *Arg) const |
| Returns true if this CallSite passes the given Value* as an argument to the called function. More...
|
|
Establish a view to a call site for examination.
Definition at line 711 of file CallSite.h.