LLVM 20.0.0git
|
Used to describe addressing mode similar to ExtAddrMode in CodeGenPrepare. More...
#include "llvm/CodeGen/TargetInstrInfo.h"
Public Types | |
enum class | Formula { Basic = 0 , SExtScaledReg = 1 , ZExtScaledReg = 2 } |
Public Member Functions | |
ExtAddrMode ()=default | |
Public Attributes | |
Register | BaseReg |
Register | ScaledReg |
int64_t | Scale = 0 |
int64_t | Displacement = 0 |
Formula | Form = Formula::Basic |
Used to describe addressing mode similar to ExtAddrMode in CodeGenPrepare.
It holds the register values, the scale value and the displacement. It also holds a descriptor for the expression used to calculate the address from the operands.
Definition at line 93 of file TargetInstrInfo.h.
|
strong |
Enumerator | |
---|---|
Basic | |
SExtScaledReg | |
ZExtScaledReg |
Definition at line 94 of file TargetInstrInfo.h.
|
default |
Register llvm::ExtAddrMode::BaseReg |
Definition at line 100 of file TargetInstrInfo.h.
Referenced by llvm::AArch64InstrInfo::canFoldIntoAddrMode(), llvm::RISCVInstrInfo::canFoldIntoAddrMode(), llvm::AArch64InstrInfo::emitLdStWithAddr(), llvm::RISCVInstrInfo::emitLdStWithAddr(), llvm::AArch64InstrInfo::getAddrModeFromMemoryOp(), and llvm::X86InstrInfo::getAddrModeFromMemoryOp().
int64_t llvm::ExtAddrMode::Displacement = 0 |
Definition at line 103 of file TargetInstrInfo.h.
Referenced by llvm::AArch64InstrInfo::canFoldIntoAddrMode(), llvm::RISCVInstrInfo::canFoldIntoAddrMode(), llvm::AArch64InstrInfo::emitLdStWithAddr(), llvm::RISCVInstrInfo::emitLdStWithAddr(), llvm::AArch64InstrInfo::getAddrModeFromMemoryOp(), llvm::X86InstrInfo::getAddrModeFromMemoryOp(), and llvm::X86InstrInfo::verifyInstruction().
Formula llvm::ExtAddrMode::Form = Formula::Basic |
Definition at line 104 of file TargetInstrInfo.h.
Referenced by llvm::AArch64InstrInfo::canFoldIntoAddrMode(), llvm::RISCVInstrInfo::canFoldIntoAddrMode(), llvm::AArch64InstrInfo::emitLdStWithAddr(), and llvm::X86InstrInfo::verifyInstruction().
int64_t llvm::ExtAddrMode::Scale = 0 |
Definition at line 102 of file TargetInstrInfo.h.
Referenced by llvm::AArch64InstrInfo::canFoldIntoAddrMode(), llvm::RISCVInstrInfo::canFoldIntoAddrMode(), llvm::AArch64InstrInfo::emitLdStWithAddr(), llvm::RISCVInstrInfo::emitLdStWithAddr(), llvm::AArch64InstrInfo::getAddrModeFromMemoryOp(), llvm::X86InstrInfo::getAddrModeFromMemoryOp(), and llvm::X86InstrInfo::verifyInstruction().
Register llvm::ExtAddrMode::ScaledReg |
Definition at line 101 of file TargetInstrInfo.h.
Referenced by llvm::AArch64InstrInfo::canFoldIntoAddrMode(), llvm::RISCVInstrInfo::canFoldIntoAddrMode(), llvm::AArch64InstrInfo::emitLdStWithAddr(), llvm::RISCVInstrInfo::emitLdStWithAddr(), llvm::AArch64InstrInfo::getAddrModeFromMemoryOp(), llvm::X86InstrInfo::getAddrModeFromMemoryOp(), and llvm::X86InstrInfo::verifyInstruction().