GPUOcelot
|
#include <PTXInstruction.h>
Vector operation
List of opcodes for PTX instructions
ir::PTXInstruction::PTXInstruction | ( | Opcode | op = Nop , |
const PTXOperand & | d = PTXOperand() , |
||
const PTXOperand & | a = PTXOperand() , |
||
const PTXOperand & | b = PTXOperand() , |
||
const PTXOperand & | c = PTXOperand() |
||
) |
ir::PTXInstruction::~PTXInstruction | ( | ) |
ir::Instruction * ir::PTXInstruction::clone | ( | bool | copy = true | ) | const [virtual] |
Clone the instruction.
Implements ir::Instruction.
std::string ir::PTXInstruction::guard | ( | ) | const |
Returns the guard predicate representation for the instruction
bool ir::PTXInstruction::hasSideEffects | ( | ) | const |
Can the instruction affect state other than destinations?
bool ir::PTXInstruction::isBranch | ( | ) | const |
Is the instruction a branch.
bool ir::PTXInstruction::isPt | ( | const PTXOperand & | op | ) | [static] |
bool ir::PTXInstruction::mayHaveAddressableOperand | ( | ) | const |
Does the instruction accept an address as an operand.
std::string ir::PTXInstruction::modifierString | ( | unsigned int | modifier, |
CarryFlag | carry = None |
||
) | [static] |
bool ir::PTXInstruction::operator== | ( | const PTXInstruction & | i | ) | const |
std::string ir::PTXInstruction::roundingMode | ( | Modifier | modifier | ) | [static] |
std::string ir::PTXInstruction::toString | ( | FormatMode | mode | ) | [static] |
std::string ir::PTXInstruction::toString | ( | ClampOperation | clamp | ) | [static] |
std::string ir::PTXInstruction::toString | ( | ColorComponent | color | ) | [static] |
std::string ir::PTXInstruction::toString | ( | VoteMode | mode | ) | [static] |
std::string ir::PTXInstruction::toString | ( | ReductionOperation | operation | ) | [static] |
std::string ir::PTXInstruction::toString | ( | PermuteMode | m | ) | [static] |
std::string ir::PTXInstruction::toString | ( | Modifier | modifier | ) | [static] |
std::string ir::PTXInstruction::toString | ( | FloatingPointMode | m | ) | [static] |
std::string ir::PTXInstruction::toString | ( | BarrierOperation | operation | ) | [static] |
std::string ir::PTXInstruction::toString | ( | AtomicOperation | operation | ) | [static] |
std::string ir::PTXInstruction::toString | ( | CmpOp | operation | ) | [static] |
std::string ir::PTXInstruction::toString | ( | Opcode | opcode | ) | [static] |
std::string ir::PTXInstruction::toString | ( | SurfaceQuery | query | ) | [static] |
std::string ir::PTXInstruction::toString | ( | Vec | v | ) | [static] |
std::string ir::PTXInstruction::toString | ( | BoolOp | operation | ) | [static] |
std::string ir::PTXInstruction::toString | ( | Level | l | ) | [static] |
std::string ir::PTXInstruction::toString | ( | AddressSpace | space | ) | [static] |
std::string ir::PTXInstruction::toString | ( | Geometry | geometry | ) | [static] |
std::string ir::PTXInstruction::toString | ( | ) | const [virtual] |
Returns a parsable string representation of the instruction
Implements ir::Instruction.
std::string ir::PTXInstruction::valid | ( | ) | const [virtual] |
Is this a valid instruction?
return null string if valid, otherwise a description of why not.
Implements ir::Instruction.
union { ... } |
union { ... } |
union { ... } |
union { ... } |
union { ... } |
Source operand a
For load and store, indicates which addressing mode to use
If instruction type is atomic, select this atomic operation
Source operand b
Indicates which type of bar. instruction should be used
Boolean operator
Branch target instruction index.
Source operand c
indicates how loads, stores, and prefetches should take place
optionally writes carry-out value to condition code register
If the instruction updates the CC, what is the CC register
how to handle out-of-bounds accesses
For tld4 instructions, the color component
Comparison operator
Destination operand
Is this a divide full instruction?
For sust and suld instructions, indicates whether to store unformatted binary datay or formatted store of a vector of 32-bit data
Geometry if this is a texture or surface instruction
Is this a kernel argument in the parameter space?
For membar, the visibility level in the thread hierarchy
std::string ir::PTXInstruction::metadata |
Meta-data attached to the instruction.
The following are used for debugging meta-data.
unsigned int ir::PTXInstruction::modifier |
Flag containing one or more floating-point modifiers
If this is a branch, is a check for re-convergence with threads waiting at the target necessary.
Opcode of PTX instruction
unsigned int ir::PTXInstruction::pc |
The program counter of the instruction.
Permute mode for prmt instructions
If the instruction is predicated, the guard
Second destination register for SetP, otherwise unused
Index of post dominator instruction at which possibly divergent branches reconverge.
If the instruction is a reduction, select this operation
Context switch reentry point.
Shift amount flag for bfind instructions
unsigned int ir::PTXInstruction::statementIndex |
The index of the statement that this instruction was created from.
The following are used for debugging information at runtime.
For txq and suq instruction, specifies attributes
For call instructions, indicates a tail call
If cvta instruction, indicates whether destination is generic address or if source is generic address - true if segmented address space, false if generic
indicates data type of instruction
Indicates whether target or source is a vector or scalar
Indicates whether the target address space is volatile