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

X86AddressMode - This struct holds a generalized full x86 address mode. More...

#include "Target/X86/X86InstrBuilder.h"

Public Types

enum  { RegBase , FrameIndexBase }

Public Member Functions

 X86AddressMode ()
void getFullAddress (SmallVectorImpl< MachineOperand > &MO)

Public Attributes

enum llvm::X86AddressMode:: { ... }  BaseType
union {
   unsigned   Reg
   int   FrameIndex
unsigned Scale
unsigned IndexReg
int Disp
const GlobalValueGV
unsigned GVOpFlags

Detailed Description

X86AddressMode - This struct holds a generalized full x86 address mode.

The base register can be a frame index, which will eventually be replaced with BP or SP and Disp being offsetted accordingly. The displacement may also include the offset of a global value.

Definition at line 42 of file X86InstrBuilder.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

Definition at line 43 of file X86InstrBuilder.h.

Constructor & Destructor Documentation

◆ X86AddressMode()

llvm::X86AddressMode::X86AddressMode ( )

Definition at line 59 of file X86InstrBuilder.h.

References Base.

Member Function Documentation

◆ getFullAddress()

void llvm::X86AddressMode::getFullAddress ( SmallVectorImpl< MachineOperand > &  MO)

Member Data Documentation


union { ... } llvm::X86AddressMode::Base


enum { ... } llvm::X86AddressMode::BaseType

◆ Disp

int llvm::X86AddressMode::Disp

◆ FrameIndex

int llvm::X86AddressMode::FrameIndex

◆ GV

const GlobalValue* llvm::X86AddressMode::GV

◆ GVOpFlags

unsigned llvm::X86AddressMode::GVOpFlags

Definition at line 57 of file X86InstrBuilder.h.

Referenced by llvm::addFullAddress(), and getFullAddress().

◆ IndexReg

unsigned llvm::X86AddressMode::IndexReg

◆ Reg

unsigned llvm::X86AddressMode::Reg

◆ Scale

unsigned llvm::X86AddressMode::Scale

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