|
LLVM 24.0.0git
|
This represents an addressing mode of: BaseGV + BaseOffs + BaseReg + Scale*ScaleReg + ScalableOffset*vscale If BaseGV is null, there is no BaseGV. More...
#include "llvm/CodeGen/TargetLowering.h"
Public Member Functions | |
| AddrMode ()=default | |
Public Attributes | |
| GlobalValue * | BaseGV = nullptr |
| int64_t | BaseOffs = 0 |
| bool | HasBaseReg = false |
| int64_t | Scale = 0 |
| int64_t | ScalableOffset = 0 |
This represents an addressing mode of: BaseGV + BaseOffs + BaseReg + Scale*ScaleReg + ScalableOffset*vscale If BaseGV is null, there is no BaseGV.
If BaseOffs is zero, there is no base offset. If HasBaseReg is false, there is no base register. If Scale is zero, there is no ScaleReg. Scale of 1 indicates a reg with no scale. If ScalableOffset is zero, there is no scalable offset.
Definition at line 3092 of file TargetLowering.h.
|
default |
| GlobalValue* llvm::TargetLoweringBase::AddrMode::BaseGV = nullptr |
Definition at line 3093 of file TargetLowering.h.
Referenced by llvm::AArch64TTIImpl::getScalingFactorCost(), llvm::ARMTTIImpl::getScalingFactorCost(), llvm::BasicTTIImplBase< BasicTTIImpl >::getScalingFactorCost(), llvm::X86TTIImpl::getScalingFactorCost(), llvm::AArch64TargetLowering::isLegalAddressingMode(), llvm::ARMTargetLowering::isLegalAddressingMode(), llvm::AVRTargetLowering::isLegalAddressingMode(), llvm::BasicTTIImplBase< BasicTTIImpl >::isLegalAddressingMode(), llvm::HexagonTargetLowering::isLegalAddressingMode(), llvm::LoongArchTargetLowering::isLegalAddressingMode(), llvm::NVPTXTargetLowering::isLegalAddressingMode(), llvm::PPCTargetLowering::isLegalAddressingMode(), llvm::RISCVTargetLowering::isLegalAddressingMode(), llvm::SITargetLowering::isLegalAddressingMode(), llvm::SystemZTargetLowering::isLegalAddressingMode(), llvm::TargetLoweringBase::isLegalAddressingMode(), llvm::X86TargetLowering::isLegalAddressingMode(), and llvm::XCoreTargetLowering::isLegalAddressingMode().
| int64_t llvm::TargetLoweringBase::AddrMode::BaseOffs = 0 |
Definition at line 3094 of file TargetLowering.h.
Referenced by canFoldInAddressingMode(), canFoldInAddressingMode(), llvm::AArch64TTIImpl::getScalingFactorCost(), llvm::ARMTTIImpl::getScalingFactorCost(), llvm::BasicTTIImplBase< BasicTTIImpl >::getScalingFactorCost(), llvm::X86TTIImpl::getScalingFactorCost(), llvm::AArch64TargetLowering::isLegalAddressingMode(), llvm::ARMTargetLowering::isLegalAddressingMode(), llvm::AVRTargetLowering::isLegalAddressingMode(), llvm::BasicTTIImplBase< BasicTTIImpl >::isLegalAddressingMode(), llvm::HexagonTargetLowering::isLegalAddressingMode(), llvm::LoongArchTargetLowering::isLegalAddressingMode(), llvm::NVPTXTargetLowering::isLegalAddressingMode(), llvm::PPCTargetLowering::isLegalAddressingMode(), llvm::RISCVTargetLowering::isLegalAddressingMode(), llvm::SITargetLowering::isLegalAddressingMode(), llvm::SystemZTargetLowering::isLegalAddressingMode(), llvm::TargetLoweringBase::isLegalAddressingMode(), llvm::X86TargetLowering::isLegalAddressingMode(), llvm::XCoreTargetLowering::isLegalAddressingMode(), llvm::SITargetLowering::isLegalFlatAddressingMode(), and llvm::CombinerHelper::matchPtrAddImmedChain().
| bool llvm::TargetLoweringBase::AddrMode::HasBaseReg = false |
Definition at line 3095 of file TargetLowering.h.
Referenced by canFoldInAddressingMode(), canFoldInAddressingMode(), llvm::AArch64TTIImpl::getScalingFactorCost(), llvm::ARMTTIImpl::getScalingFactorCost(), llvm::BasicTTIImplBase< BasicTTIImpl >::getScalingFactorCost(), llvm::X86TTIImpl::getScalingFactorCost(), llvm::AArch64TargetLowering::isLegalAddressingMode(), llvm::ARMTargetLowering::isLegalAddressingMode(), llvm::AVRTargetLowering::isLegalAddressingMode(), llvm::BasicTTIImplBase< BasicTTIImpl >::isLegalAddressingMode(), llvm::LoongArchTargetLowering::isLegalAddressingMode(), llvm::NVPTXTargetLowering::isLegalAddressingMode(), llvm::PPCTargetLowering::isLegalAddressingMode(), llvm::RISCVTargetLowering::isLegalAddressingMode(), llvm::SITargetLowering::isLegalAddressingMode(), llvm::TargetLoweringBase::isLegalAddressingMode(), llvm::X86TargetLowering::isLegalAddressingMode(), llvm::XCoreTargetLowering::isLegalAddressingMode(), llvm::ARMTargetLowering::isLegalT1ScaledAddressingMode(), llvm::ARMTargetLowering::isLegalT2ScaledAddressingMode(), and llvm::CombinerHelper::matchPtrAddImmedChain().
| int64_t llvm::TargetLoweringBase::AddrMode::ScalableOffset = 0 |
Definition at line 3097 of file TargetLowering.h.
Referenced by llvm::AArch64TTIImpl::getScalingFactorCost(), llvm::ARMTTIImpl::getScalingFactorCost(), llvm::BasicTTIImplBase< BasicTTIImpl >::getScalingFactorCost(), llvm::X86TTIImpl::getScalingFactorCost(), llvm::AArch64TargetLowering::isLegalAddressingMode(), llvm::BasicTTIImplBase< BasicTTIImpl >::isLegalAddressingMode(), llvm::RISCVTargetLowering::isLegalAddressingMode(), and llvm::TargetLoweringBase::isLegalAddressingMode().
| int64_t llvm::TargetLoweringBase::AddrMode::Scale = 0 |
Definition at line 3096 of file TargetLowering.h.
Referenced by canFoldInAddressingMode(), canFoldInAddressingMode(), llvm::AArch64TTIImpl::getScalingFactorCost(), llvm::ARMTTIImpl::getScalingFactorCost(), llvm::BasicTTIImplBase< BasicTTIImpl >::getScalingFactorCost(), llvm::X86TTIImpl::getScalingFactorCost(), llvm::AArch64TargetLowering::isLegalAddressingMode(), llvm::ARCTargetLowering::isLegalAddressingMode(), llvm::ARMTargetLowering::isLegalAddressingMode(), llvm::AVRTargetLowering::isLegalAddressingMode(), llvm::BasicTTIImplBase< BasicTTIImpl >::isLegalAddressingMode(), llvm::HexagonTargetLowering::isLegalAddressingMode(), llvm::LoongArchTargetLowering::isLegalAddressingMode(), llvm::NVPTXTargetLowering::isLegalAddressingMode(), llvm::PPCTargetLowering::isLegalAddressingMode(), llvm::RISCVTargetLowering::isLegalAddressingMode(), llvm::SITargetLowering::isLegalAddressingMode(), llvm::SystemZTargetLowering::isLegalAddressingMode(), llvm::TargetLoweringBase::isLegalAddressingMode(), llvm::X86TargetLowering::isLegalAddressingMode(), llvm::XCoreTargetLowering::isLegalAddressingMode(), llvm::SITargetLowering::isLegalFlatAddressingMode(), llvm::ARMTargetLowering::isLegalT1ScaledAddressingMode(), and llvm::ARMTargetLowering::isLegalT2ScaledAddressingMode().