LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Macros | Functions
ARMMCCodeEmitter.cpp File Reference
#include "MCTargetDesc/ARMMCTargetDesc.h"
#include "MCTargetDesc/ARMAddressingModes.h"
#include "MCTargetDesc/ARMBaseInfo.h"
#include "MCTargetDesc/ARMFixupKinds.h"
#include "MCTargetDesc/ARMMCExpr.h"
#include "llvm/ADT/APFloat.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/MC/MCCodeEmitter.h"
#include "llvm/MC/MCContext.h"
#include "llvm/MC/MCExpr.h"
#include "llvm/MC/MCInst.h"
#include "llvm/MC/MCInstrInfo.h"
#include "llvm/MC/MCRegisterInfo.h"
#include "llvm/MC/MCSubtargetInfo.h"
#include "llvm/Support/raw_ostream.h"
#include "ARMGenMCCodeEmitter.inc"
Include dependency graph for ARMMCCodeEmitter.cpp:

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "mccodeemitter"
 

Functions

 STATISTIC (MCNumEmitted,"Number of MC instructions emitted.")
 
 STATISTIC (MCNumCPRelocations,"Number of constant pool relocations created.")
 
static uint32_t getBranchTargetOpValue (const MCInst &MI, unsigned OpIdx, unsigned FixupKind, SmallVectorImpl< MCFixup > &Fixups)
 
static int32_t encodeThumbBLOffset (int32_t offset)
 
static bool HasConditionalBranch (const MCInst &MI)
 Return true if this branch has a non-always predication. More...
 
static bool EvaluateAsPCRel (const MCExpr *Expr)
 

Macro Definition Documentation

#define DEBUG_TYPE   "mccodeemitter"

Definition at line 14 of file ARMMCCodeEmitter.cpp.

Function Documentation

static int32_t encodeThumbBLOffset ( int32_t  offset)
static

Definition at line 492 of file ARMMCCodeEmitter.cpp.

static bool EvaluateAsPCRel ( const MCExpr Expr)
static
static uint32_t getBranchTargetOpValue ( const MCInst MI,
unsigned  OpIdx,
unsigned  FixupKind,
SmallVectorImpl< MCFixup > &  Fixups 
)
static

getBranchTargetOpValue - Helper function to get the branch target operand, which is either an immediate or requires a fixup.

Definition at line 474 of file ARMMCCodeEmitter.cpp.

References llvm::MCFixup::Create(), llvm::MCOperand::getExpr(), llvm::MCOperand::getImm(), llvm::MCInst::getLoc(), llvm::MCInst::getOperand(), llvm::MCOperand::isExpr(), llvm::MCOperand::isImm(), and llvm::SmallVectorTemplateBase< T, isPodLike< T >::value >::push_back().

Referenced by LowerDextDins().

static bool HasConditionalBranch ( const MCInst MI)
static
STATISTIC ( MCNumEmitted  ,
"Number of MC instructions emitted."   
)
STATISTIC ( MCNumCPRelocations  ,
"Number of constant pool relocations created."   
)