LLVM  8.0.1
Enumerations
llvm::AVRISD Namespace Reference

Enumerations

enum  NodeType {
  FIRST_NUMBER = ISD::BUILTIN_OP_END, RET_FLAG, RETI_FLAG, CALL,
  WRAPPER, LSL, LSR, ASR,
  ROR, ROL, LSLLOOP, LSRLOOP,
  ROLLOOP, RORLOOP, ASRLOOP, BRCOND,
  CMP, CMPC, TST, SELECT_CC
}
 AVR Specific DAG Nodes. More...
 

Enumeration Type Documentation

◆ NodeType

AVR Specific DAG Nodes.

Enumerator
FIRST_NUMBER 

Start the numbering where the builtin ops leave off.

RET_FLAG 

Return from subroutine.

RETI_FLAG 

Return from ISR.

CALL 

Represents an abstract call instruction, which includes a bunch of information.

WRAPPER 

A wrapper node for TargetConstantPool, TargetExternalSymbol, and TargetGlobalAddress.

LSL 

Logical shift left.

LSR 

Logical shift right.

ASR 

Arithmetic shift right.

ROR 

Bit rotate right.

ROL 

Bit rotate left.

LSLLOOP 

A loop of single logical shift left instructions.

LSRLOOP 

A loop of single logical shift right instructions.

ROLLOOP 

A loop of single left bit rotate instructions.

RORLOOP 

A loop of single right bit rotate instructions.

ASRLOOP 

A loop of single arithmetic shift right instructions.

BRCOND 

AVR conditional branches.

Operand 0 is the chain operand, operand 1 is the block to branch if condition is true, operand 2 is the condition code, and operand 3 is the flag operand produced by a CMP or TEST instruction.

CMP 

Compare instruction.

CMPC 

Compare with carry instruction.

TST 

Test for zero or minus instruction.

SELECT_CC 

Operand 0 and operand 1 are selection variable, operand 2 is condition code and operand 3 is flag operand.

Definition at line 26 of file AVRISelLowering.h.