LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | Public Attributes | List of all members
llvm::X86AddressMode Struct Reference

#include <X86InstrBuilder.h>

Collaboration diagram for llvm::X86AddressMode:
Collaboration graph
[legend]

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
 
Base
 
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 37 of file X86InstrBuilder.h.

Member Enumeration Documentation

anonymous enum
Enumerator
RegBase 
FrameIndexBase 

Definition at line 38 of file X86InstrBuilder.h.

Constructor & Destructor Documentation

llvm::X86AddressMode::X86AddressMode ( )
inline

Definition at line 54 of file X86InstrBuilder.h.

References Base.

Member Function Documentation

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

Member Data Documentation

union { ... } llvm::X86AddressMode::Base
enum { ... } llvm::X86AddressMode::BaseType
int llvm::X86AddressMode::Disp
int llvm::X86AddressMode::FrameIndex
const GlobalValue* llvm::X86AddressMode::GV
unsigned llvm::X86AddressMode::GVOpFlags

Definition at line 52 of file X86InstrBuilder.h.

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

unsigned llvm::X86AddressMode::IndexReg
unsigned llvm::X86AddressMode::Reg
unsigned llvm::X86AddressMode::Scale

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