|
LLVM 22.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 95 of file TargetInstrInfo.h.
|
strong |
| Enumerator | |
|---|---|
| Basic | |
| SExtScaledReg | |
| ZExtScaledReg | |
Definition at line 96 of file TargetInstrInfo.h.
|
default |
| Register llvm::ExtAddrMode::BaseReg |
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(), and llvm::X86InstrInfo::getAddrModeFromMemoryOp().
| int64_t llvm::ExtAddrMode::Displacement = 0 |
Definition at line 105 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 106 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 104 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 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().