LLVM  9.0.0svn
Macros | Functions
RISCVAsmParser.cpp File Reference
#include "MCTargetDesc/RISCVAsmBackend.h"
#include "MCTargetDesc/RISCVMCExpr.h"
#include "MCTargetDesc/RISCVMCTargetDesc.h"
#include "MCTargetDesc/RISCVTargetStreamer.h"
#include "TargetInfo/RISCVTargetInfo.h"
#include "Utils/RISCVBaseInfo.h"
#include "Utils/RISCVMatInt.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringSwitch.h"
#include "llvm/MC/MCAssembler.h"
#include "llvm/MC/MCContext.h"
#include "llvm/MC/MCExpr.h"
#include "llvm/MC/MCInst.h"
#include "llvm/MC/MCInstBuilder.h"
#include "llvm/MC/MCObjectFileInfo.h"
#include "llvm/MC/MCParser/MCAsmLexer.h"
#include "llvm/MC/MCParser/MCParsedAsmOperand.h"
#include "llvm/MC/MCParser/MCTargetAsmParser.h"
#include "llvm/MC/MCRegisterInfo.h"
#include "llvm/MC/MCStreamer.h"
#include "llvm/MC/MCSubtargetInfo.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/MathExtras.h"
#include "llvm/Support/TargetRegistry.h"
#include <limits>
#include "RISCVGenCompressInstEmitter.inc"
#include "RISCVGenAsmMatcher.inc"
Include dependency graph for RISCVAsmParser.cpp:

Go to the source code of this file.

Macros

#define GEN_COMPRESS_INSTR
 
#define GET_ASSEMBLER_HEADER
 
#define GET_OPERAND_DIAGNOSTIC_TYPES
 
#define GET_REGISTER_MATCHER
 
#define GET_MATCHER_IMPLEMENTATION
 

Functions

unsigned convertFPR32ToFPR64 (unsigned Reg)
 
static bool matchRegisterNameHelper (bool IsRV32E, unsigned &RegNo, StringRef Name)
 
void LLVMInitializeRISCVAsmParser ()
 

Macro Definition Documentation

◆ GEN_COMPRESS_INSTR

#define GEN_COMPRESS_INSTR

Definition at line 40 of file RISCVAsmParser.cpp.

◆ GET_ASSEMBLER_HEADER

#define GET_ASSEMBLER_HEADER

Definition at line 122 of file RISCVAsmParser.cpp.

◆ GET_MATCHER_IMPLEMENTATION

#define GET_MATCHER_IMPLEMENTATION

Definition at line 730 of file RISCVAsmParser.cpp.

◆ GET_OPERAND_DIAGNOSTIC_TYPES

#define GET_OPERAND_DIAGNOSTIC_TYPES

Definition at line 172 of file RISCVAsmParser.cpp.

◆ GET_REGISTER_MATCHER

#define GET_REGISTER_MATCHER

Definition at line 729 of file RISCVAsmParser.cpp.

Function Documentation

◆ convertFPR32ToFPR64()

unsigned convertFPR32ToFPR64 ( unsigned  Reg)

◆ LLVMInitializeRISCVAsmParser()

void LLVMInitializeRISCVAsmParser ( )

Definition at line 1757 of file RISCVAsmParser.cpp.

References llvm::getTheRISCV32Target(), llvm::getTheRISCV64Target(), X, and Y.

◆ matchRegisterNameHelper()

static bool matchRegisterNameHelper ( bool  IsRV32E,
unsigned RegNo,
StringRef  Name 
)
static

Definition at line 971 of file RISCVAsmParser.cpp.

References llvm::MCBinaryExpr::Add, llvm::MCInstBuilder::addImm(), addOperand(), llvm::MCInstBuilder::addReg(), assert(), llvm::AsmToken::Comma, llvm::StringRef::consume_back(), llvm::RISCVMCExpr::create(), llvm::MCSymbolRefExpr::create(), llvm::MCContext::createTempSymbol(), llvm::dyn_cast(), E, llvm::MCAsmParser::eatToEndOfStatement(), llvm::MCStreamer::EmitInstruction(), llvm::MCStreamer::EmitLabel(), llvm::AsmToken::EndOfStatement, llvm::Error, llvm::X86ISD::FLD, llvm::RISCVMatInt::generateInstSeq(), llvm::MCStreamer::getContext(), llvm::AsmToken::getEndLoc(), llvm::MCOperand::getExpr(), llvm::SMLoc::getFromPointer(), llvm::AsmToken::getIdentifier(), llvm::MCOperand::getImm(), llvm::MCBinaryExpr::getLHS(), llvm::AsmToken::getLoc(), llvm::MCInst::getLoc(), llvm::MCInst::getOpcode(), llvm::MCBinaryExpr::getOpcode(), llvm::MCInst::getOperand(), llvm::SMLoc::getPointer(), llvm::MCOperand::getReg(), llvm::MCBinaryExpr::getRHS(), llvm::AsmToken::getString(), llvm::MCAsmParser::getTok(), llvm::MCConstantExpr::getValue(), llvm::MCSymbol::getVariableValue(), llvm::RISCVMCExpr::getVariantKindForName(), llvm::AsmToken::Identifier, llvm::object::Identifier, llvm::AsmToken::Integer, llvm::MCOperand::isExpr(), llvm::AsmToken::isNot(), llvm::MCOperand::isReg(), llvm::MCSymbol::isVariable(), llvm::ARM_MB::LD, llvm::MCAsmParser::Lex(), llvm::AArch64SysReg::lookupSysRegByEncoding(), llvm::AArch64SysReg::lookupSysRegByName(), llvm::AsmToken::LParen, llvm::MatchOperand_NoMatch, llvm::MatchOperand_ParseFail, llvm::MatchOperand_Success, MatchRegisterAltName(), MatchRegisterName(), llvm::AsmToken::Minus, parseImmediate(), llvm::AsmToken::Percent, llvm::AsmToken::Plus, llvm::SmallVectorTemplateBase< T, bool >::push_back(), Reg, llvm::AsmToken::RParen, llvm::RISCVAsmBackend::setForceRelocs(), llvm::MCInst::setLoc(), llvm::AsmToken::String, llvm::MCBinaryExpr::Sub, llvm::MCSymbolRefExpr::VK_None, llvm::RISCVMCExpr::VK_RISCV_CALL, llvm::RISCVMCExpr::VK_RISCV_CALL_PLT, llvm::RISCVMCExpr::VK_RISCV_GOT_HI, llvm::RISCVMCExpr::VK_RISCV_Invalid, llvm::RISCVMCExpr::VK_RISCV_None, llvm::RISCVMCExpr::VK_RISCV_PCREL_HI, llvm::RISCVMCExpr::VK_RISCV_PCREL_LO, llvm::RISCVMCExpr::VK_RISCV_TLS_GD_HI, llvm::RISCVMCExpr::VK_RISCV_TLS_GOT_HI, and llvm::Warning.