LLVM  9.0.0svn
Public Types | Public Attributes | List of all members
llvm::AbstractCallSite::CallbackInfo Struct Reference

The encoding of a callback with regards to the underlying instruction. More...

#include "llvm/IR/CallSite.h"

Collaboration diagram for llvm::AbstractCallSite::CallbackInfo:
Collaboration graph
[legend]

Public Types

using ParameterEncodingTy = SmallVector< int, 0 >
 For direct/indirect calls the parameter encoding is empty. More...
 

Public Attributes

ParameterEncodingTy ParameterEncoding
 

Detailed Description

The encoding of a callback with regards to the underlying instruction.

Definition at line 717 of file CallSite.h.

Member Typedef Documentation

◆ ParameterEncodingTy

For direct/indirect calls the parameter encoding is empty.

If it is not, the abstract call site represents a callback. In that case, the first element of the encoding vector represents which argument of the call site CS is the callback callee. The remaining elements map parameters (identified by their position) to the arguments that will be passed through (also identified by position but in the call site instruction).

NOTE that we use LLVM argument numbers (starting at 0) and not clang/soruce argument numbers (starting at 1). The -1 entries represent unknown values that are passed to the callee.

Definition at line 729 of file CallSite.h.

Member Data Documentation

◆ ParameterEncoding

ParameterEncodingTy llvm::AbstractCallSite::CallbackInfo::ParameterEncoding

The documentation for this struct was generated from the following file: