LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Macros | Enumerations
ARMAsmParser.cpp File Reference
#include "ARMBuildAttrs.h"
#include "ARMFPUName.h"
#include "ARMFeatures.h"
#include "llvm/MC/MCTargetAsmParser.h"
#include "MCTargetDesc/ARMAddressingModes.h"
#include "MCTargetDesc/ARMBaseInfo.h"
#include "MCTargetDesc/ARMMCExpr.h"
#include "llvm/ADT/BitVector.h"
#include "llvm/ADT/OwningPtr.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringSwitch.h"
#include "llvm/ADT/Twine.h"
#include "llvm/MC/MCAsmInfo.h"
#include "llvm/MC/MCAssembler.h"
#include "llvm/MC/MCContext.h"
#include "llvm/MC/MCELFStreamer.h"
#include "llvm/MC/MCExpr.h"
#include "llvm/MC/MCInst.h"
#include "llvm/MC/MCInstrDesc.h"
#include "llvm/MC/MCInstrInfo.h"
#include "llvm/MC/MCParser/MCAsmLexer.h"
#include "llvm/MC/MCParser/MCAsmParser.h"
#include "llvm/MC/MCParser/MCParsedAsmOperand.h"
#include "llvm/MC/MCRegisterInfo.h"
#include "llvm/MC/MCStreamer.h"
#include "llvm/MC/MCSubtargetInfo.h"
#include "llvm/Support/ELF.h"
#include "llvm/Support/MathExtras.h"
#include "llvm/Support/SourceMgr.h"
#include "llvm/Support/TargetRegistry.h"
#include "llvm/Support/raw_ostream.h"
#include "ARMGenAsmMatcher.inc"
#include "ARMFPUName.def"
Include dependency graph for ARMAsmParser.cpp:

Go to the source code of this file.

Macros

#define GET_OPERAND_DIAGNOSTIC_TYPES
 
#define ARM_FPU_NAME(NAME, ID)   .Case(NAME, ARM::ID)
 
Auto-generated Match Functions

{

#define GET_ASSEMBLER_HEADER
 

Enumerations

enum  VectorLaneTy
 

Auto-generated Match Functions

{

#define GET_REGISTER_MATCHER
 
#define GET_SUBTARGET_FEATURE_NAME
 
#define GET_MATCHER_IMPLEMENTATION
 
static unsigned MatchRegisterName (StringRef Name)
 
static int MatchCoprocessorOperandName (StringRef Name, char CoprocOp)
 
static unsigned getNextRegister (unsigned Reg)
 
static unsigned getDRegFromQReg (unsigned QReg)
 
static bool isDataTypeToken (StringRef Tok)
 
static bool doesIgnoreDataTypeSuffix (StringRef Mnemonic, StringRef DT)
 
static void applyMnemonicAliases (StringRef &Mnemonic, unsigned Features, unsigned VariantID)
 
static bool checkLowRegisterList (MCInst Inst, unsigned OpNo, unsigned Reg, unsigned HiReg, bool &containsReg)
 
static bool listContainsReg (MCInst &Inst, unsigned OpNo, unsigned Reg)
 
static bool instIsBreakpoint (const MCInst &Inst)
 
static unsigned getRealVSTOpcode (unsigned Opc, unsigned &Spacing)
 
static unsigned getRealVLDOpcode (unsigned Opc, unsigned &Spacing)
 
static const char * getSubtargetFeatureName (unsigned Val)
 
void LLVMInitializeARMAsmParser ()
 Force static initialization. More...
 

Macro Definition Documentation

#define ARM_FPU_NAME (   NAME,
  ID 
)    .Case(NAME, ARM::ID)
#define GET_ASSEMBLER_HEADER

Definition at line 200 of file ARMAsmParser.cpp.

#define GET_MATCHER_IMPLEMENTATION

Definition at line 8286 of file ARMAsmParser.cpp.

#define GET_OPERAND_DIAGNOSTIC_TYPES

Definition at line 259 of file ARMAsmParser.cpp.

#define GET_REGISTER_MATCHER

Definition at line 8284 of file ARMAsmParser.cpp.

#define GET_SUBTARGET_FEATURE_NAME

Definition at line 8285 of file ARMAsmParser.cpp.

Enumeration Type Documentation

Definition at line 49 of file ARMAsmParser.cpp.

Function Documentation

static void applyMnemonicAliases ( StringRef Mnemonic,
unsigned  Features,
unsigned  VariantID 
)
static
static bool checkLowRegisterList ( MCInst  Inst,
unsigned  OpNo,
unsigned  Reg,
unsigned  HiReg,
bool containsReg 
)
static
static bool doesIgnoreDataTypeSuffix ( StringRef  Mnemonic,
StringRef  DT 
)
static

Definition at line 5007 of file ARMAsmParser.cpp.

References llvm::StringRef::startswith().

static unsigned getDRegFromQReg ( unsigned  QReg)
static

Definition at line 3016 of file ARMAsmParser.cpp.

References llvm::X86II::D8, and llvm_unreachable.

static unsigned getNextRegister ( unsigned  Reg)
static

Definition at line 2996 of file ARMAsmParser.cpp.

References llvm_unreachable, R2, R4, and R6.

static unsigned getRealVLDOpcode ( unsigned  Opc,
unsigned Spacing 
)
static

Definition at line 5700 of file ARMAsmParser.cpp.

References llvm_unreachable.

static unsigned getRealVSTOpcode ( unsigned  Opc,
unsigned Spacing 
)
static

Definition at line 5591 of file ARMAsmParser.cpp.

References llvm_unreachable.

static const char* getSubtargetFeatureName ( unsigned  Val)
static
static bool instIsBreakpoint ( const MCInst Inst)
static

Definition at line 5313 of file ARMAsmParser.cpp.

References llvm::MCInst::getOpcode().

static bool isDataTypeToken ( StringRef  Tok)
static

Definition at line 4995 of file ARMAsmParser.cpp.

static bool listContainsReg ( MCInst Inst,
unsigned  OpNo,
unsigned  Reg 
)
static
void LLVMInitializeARMAsmParser ( )

Force static initialization.

Definition at line 8279 of file ARMAsmParser.cpp.

References llvm::TheARMTarget, llvm::TheThumbTarget, llvm::X, and Y.

static int MatchCoprocessorOperandName ( StringRef  Name,
char  CoprocOp 
)
static

MatchCoprocessorOperandName - Try to parse an coprocessor related instruction with a symbolic operand name. Example: "p1", "p7", "c3", "c5", ...

Definition at line 2849 of file ARMAsmParser.cpp.

References llvm::StringRef::size().

static unsigned MatchRegisterName ( StringRef  Name)
static