|
LLVM
8.0.1
|
Functions in this group relate to the inspection and manipulation of individual instructions. More...
|
Modules | |
| Call Sites and Invocations | |
| Functions in this group apply to instructions that refer to call sites and invocations. | |
| Terminators | |
| Functions in this group only apply to instructions for which LLVMIsATerminatorInst returns true. | |
| Allocas | |
| Functions in this group only apply to instructions that map to llvm::AllocaInst instances. | |
| GEPs | |
| Functions in this group only apply to instructions that map to llvm::GetElementPtrInst instances. | |
| PHI Nodes | |
| Functions in this group only apply to instructions that map to llvm::PHINode instances. | |
| ExtractValue | |
| InsertValue | |
| Functions in this group only apply to instructions that map to llvm::ExtractValue and llvm::InsertValue instances. | |
Functions | |
| int | LLVMHasMetadata (LLVMValueRef Val) |
| Determine whether an instruction has any metadata attached. More... | |
| LLVMValueRef | LLVMGetMetadata (LLVMValueRef Val, unsigned KindID) |
| Return metadata associated with an instruction value. More... | |
| void | LLVMSetMetadata (LLVMValueRef Val, unsigned KindID, LLVMValueRef Node) |
| Set metadata associated with an instruction value. More... | |
| LLVMValueMetadataEntry * | LLVMInstructionGetAllMetadataOtherThanDebugLoc (LLVMValueRef Instr, size_t *NumEntries) |
| Returns the metadata associated with an instruction value, but filters out all the debug locations. More... | |
| LLVMBasicBlockRef | LLVMGetInstructionParent (LLVMValueRef Inst) |
| Obtain the basic block to which an instruction belongs. More... | |
| LLVMValueRef | LLVMGetNextInstruction (LLVMValueRef Inst) |
| Obtain the instruction that occurs after the one specified. More... | |
| LLVMValueRef | LLVMGetPreviousInstruction (LLVMValueRef Inst) |
| Obtain the instruction that occurred before this one. More... | |
| void | LLVMInstructionRemoveFromParent (LLVMValueRef Inst) |
| Remove and delete an instruction. More... | |
| void | LLVMInstructionEraseFromParent (LLVMValueRef Inst) |
| Remove and delete an instruction. More... | |
| LLVMOpcode | LLVMGetInstructionOpcode (LLVMValueRef Inst) |
| Obtain the code opcode for an individual instruction. More... | |
| LLVMIntPredicate | LLVMGetICmpPredicate (LLVMValueRef Inst) |
| Obtain the predicate of an instruction. More... | |
| LLVMRealPredicate | LLVMGetFCmpPredicate (LLVMValueRef Inst) |
| Obtain the float predicate of an instruction. More... | |
| LLVMValueRef | LLVMInstructionClone (LLVMValueRef Inst) |
| Create a copy of 'this' instruction that is identical in all ways except the following: More... | |
| LLVMValueRef | LLVMIsATerminatorInst (LLVMValueRef Inst) |
| Determine whether an instruction is a terminator. More... | |
Functions in this group relate to the inspection and manipulation of individual instructions.
In the C++ API, an instruction is modeled by llvm::Instruction. This class has a large number of descendents. llvm::Instruction is a llvm::Value and in the C API, instructions are modeled by LLVMValueRef.
This group also contains sub-groups which operate on specific llvm::Instruction types, e.g. llvm::CallInst.
| LLVMRealPredicate LLVMGetFCmpPredicate | ( | LLVMValueRef | Inst | ) |
Obtain the float predicate of an instruction.
This is only valid for instructions that correspond to llvm::FCmpInst or llvm::ConstantExpr whose opcode is llvm::Instruction::FCmp.
Definition at line 2637 of file Core.cpp.
References I, and llvm::unwrap().
| LLVMIntPredicate LLVMGetICmpPredicate | ( | LLVMValueRef | Inst | ) |
Obtain the predicate of an instruction.
This is only valid for instructions that correspond to llvm::ICmpInst or llvm::ConstantExpr whose opcode is llvm::Instruction::ICmp.
Definition at line 2628 of file Core.cpp.
References I, and llvm::unwrap().
| LLVMOpcode LLVMGetInstructionOpcode | ( | LLVMValueRef | Inst | ) |
Obtain the code opcode for an individual instruction.
Definition at line 2646 of file Core.cpp.
References C, llvm::Instruction::getOpcode(), map_to_llvmopcode(), and llvm::unwrap().
| LLVMBasicBlockRef LLVMGetInstructionParent | ( | LLVMValueRef | Inst | ) |
Obtain the basic block to which an instruction belongs.
Definition at line 2584 of file Core.cpp.
References getParent(), and llvm::wrap().
| LLVMValueRef LLVMGetMetadata | ( | LLVMValueRef | Val, |
| unsigned | KindID | ||
| ) |
Return metadata associated with an instruction value.
Definition at line 855 of file Core.cpp.
References assert(), llvm::MetadataAsValue::get(), I, and llvm::wrap().
| LLVMValueRef LLVMGetNextInstruction | ( | LLVMValueRef | Inst | ) |
Obtain the instruction that occurs after the one specified.
The next instruction will be from the same basic block.
If this is the last instruction in a basic block, NULL will be returned.
Definition at line 2604 of file Core.cpp.
References llvm::BasicBlock::end(), llvm::Instruction::getParent(), I, and llvm::wrap().
| LLVMValueRef LLVMGetPreviousInstruction | ( | LLVMValueRef | Inst | ) |
Obtain the instruction that occurred before this one.
If the instruction is the first instruction in a basic block, NULL will be returned.
Definition at line 2612 of file Core.cpp.
References llvm::BasicBlock::begin(), llvm::Instruction::getParent(), I, and llvm::wrap().
| int LLVMHasMetadata | ( | LLVMValueRef | Val | ) |
| LLVMValueRef LLVMInstructionClone | ( | LLVMValueRef | Inst | ) |
Create a copy of 'this' instruction that is identical in all ways except the following:
Definition at line 2652 of file Core.cpp.
References C, llvm::Instruction::clone(), llvm::unwrap(), and llvm::wrap().
| void LLVMInstructionEraseFromParent | ( | LLVMValueRef | Inst | ) |
Remove and delete an instruction.
The instruction specified is removed from its containing building block and then deleted.
| LLVMValueMetadataEntry* LLVMInstructionGetAllMetadataOtherThanDebugLoc | ( | LLVMValueRef | Instr, |
| size_t * | NumEntries | ||
| ) |
Returns the metadata associated with an instruction value, but filters out all the debug locations.
Definition at line 908 of file Core.cpp.
References llvm_getMetadata().
| void LLVMInstructionRemoveFromParent | ( | LLVMValueRef | Inst | ) |
Remove and delete an instruction.
The instruction specified is removed from its containing building block but is kept alive.
| LLVMValueRef LLVMIsATerminatorInst | ( | LLVMValueRef | Inst | ) |
Determine whether an instruction is a terminator.
This routine is named to be compatible with historical functions that did this by querying the underlying C++ type.
Definition at line 2658 of file Core.cpp.
References llvm::dyn_cast(), I, llvm::Instruction::isTerminator(), llvm::unwrap(), and llvm::wrap().
| void LLVMSetMetadata | ( | LLVMValueRef | Val, |
| unsigned | KindID, | ||
| LLVMValueRef | Node | ||
| ) |
Set metadata associated with an instruction value.
Definition at line 877 of file Core.cpp.
References extractMDNode(), N, and setMetadata().
1.8.13