LLVM 19.0.0git
Public Types | Public Member Functions | Public Attributes | List of all members
llvm::ExtAddrMode Struct Reference

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
 

Detailed Description

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 91 of file TargetInstrInfo.h.

Member Enumeration Documentation

◆ Formula

enum class llvm::ExtAddrMode::Formula
strong
Enumerator
Basic 
SExtScaledReg 
ZExtScaledReg 

Definition at line 92 of file TargetInstrInfo.h.

Constructor & Destructor Documentation

◆ ExtAddrMode()

llvm::ExtAddrMode::ExtAddrMode ( )
default

Member Data Documentation

◆ BaseReg

Register llvm::ExtAddrMode::BaseReg

◆ Displacement

int64_t llvm::ExtAddrMode::Displacement = 0

◆ Form

Formula llvm::ExtAddrMode::Form = Formula::Basic

◆ Scale

int64_t llvm::ExtAddrMode::Scale = 0

◆ ScaledReg

Register llvm::ExtAddrMode::ScaledReg

The documentation for this struct was generated from the following file: