LLVM API Documentation

Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

llvm::SPUISD Namespace Reference


Enumerations

enum  NodeType {
  FIRST_NUMBER = ISD::BUILTIN_OP_END+SPU::INSTRUCTION_LIST_END, RET_FLAG, Hi, Lo,
  PCRelAddr, AFormAddr, IndirectAddr, LDRESULT,
  CALL, SHUFB, INSERT_MASK, CNTB,
  PROMOTE_SCALAR, EXTRACT_ELT0, EXTRACT_ELT0_CHAINED, EXTRACT_I1_ZEXT,
  EXTRACT_I1_SEXT, EXTRACT_I8_ZEXT, EXTRACT_I8_SEXT, MPY,
  MPYU, MPYH, MPYHH, SHLQUAD_L_BITS,
  SHLQUAD_L_BYTES, VEC_SHL, VEC_SRL, VEC_SRA,
  VEC_ROTL, VEC_ROTR, ROTQUAD_RZ_BYTES, ROTQUAD_RZ_BITS,
  ROTBYTES_RIGHT_S, ROTBYTES_LEFT, ROTBYTES_LEFT_CHAINED, ROTBYTES_LEFT_BITS,
  SELECT_MASK, SELB, ADD_EXTENDED, CARRY_GENERATE,
  SUB_EXTENDED, BORROW_GENERATE, FPInterp, FPRecipEst,
  SEXT32TO64, LAST_SPUISD
}


Enumeration Type Documentation

enum NodeType
 

Enumeration values:
FIRST_NUMBER 
RET_FLAG  Return with flag, matched by bi instruction.
Hi  High address component (upper 16).
Lo  Low address component (lower 16).
PCRelAddr  Program counter relative address.
AFormAddr  A-form address (local store).
IndirectAddr  D-Form "imm($r)" and X-form "$r($r)".
LDRESULT  Load result (value, chain).
CALL  CALL instruction.
SHUFB  Vector shuffle (permute).
INSERT_MASK  Insert element shuffle mask.
CNTB  Count leading ones in bytes.
PROMOTE_SCALAR  Promote scalar->vector.
EXTRACT_ELT0  Extract element 0.
EXTRACT_ELT0_CHAINED  Extract element 0, with chain.
EXTRACT_I1_ZEXT  Extract element 0 as i1, zero extend.
EXTRACT_I1_SEXT  Extract element 0 as i1, sign extend.
EXTRACT_I8_ZEXT  Extract element 0 as i8, zero extend.
EXTRACT_I8_SEXT  Extract element 0 as i8, sign extend.
MPY  16-bit Multiply (low parts of a 32-bit)
MPYU  Multiply Unsigned.
MPYH  Multiply High.
MPYHH  Multiply High-High.
SHLQUAD_L_BITS  Rotate quad left, by bits.
SHLQUAD_L_BYTES  Rotate quad left, by bytes.
VEC_SHL  Vector shift left.
VEC_SRL  Vector shift right (logical).
VEC_SRA  Vector shift right (arithmetic).
VEC_ROTL  Vector rotate left.
VEC_ROTR  Vector rotate right.
ROTQUAD_RZ_BYTES  Rotate quad right, by bytes, zero fill.
ROTQUAD_RZ_BITS  Rotate quad right, by bits, zero fill.
ROTBYTES_RIGHT_S  Vector rotate right, by bytes, sign fill.
ROTBYTES_LEFT  Rotate bytes (loads -> ROTQBYI).
ROTBYTES_LEFT_CHAINED  Rotate bytes (loads -> ROTQBYI), with chain.
ROTBYTES_LEFT_BITS  Rotate bytes left by bit shift count.
SELECT_MASK  Select Mask (FSM, FSMB, FSMH, FSMBI).
SELB  Select bits -> (b & mask) | (a & ~mask).
ADD_EXTENDED  Add extended, with carry.
CARRY_GENERATE  Carry generate for ADD_EXTENDED.
SUB_EXTENDED  Subtract extended, with borrow.
BORROW_GENERATE  Borrow generate for SUB_EXTENDED.
FPInterp  Floating point interpolate.
FPRecipEst  Floating point reciprocal estimate.
SEXT32TO64  Sign-extended 32-bit const -> 64-bits.
LAST_SPUISD  Last user-defined instruction.

Definition at line 24 of file SPUISelLowering.h.




This web site is hosted by the Computer Science Department at the University of Illinois at Urbana-Champaign.