|
LLVM
8.0.1
|
#include "MCTargetDesc/HexagonMCTargetDesc.h"#include "Hexagon.h"#include "HexagonDepArch.h"#include "HexagonTargetStreamer.h"#include "MCTargetDesc/HexagonInstPrinter.h"#include "MCTargetDesc/HexagonMCAsmInfo.h"#include "MCTargetDesc/HexagonMCELFStreamer.h"#include "MCTargetDesc/HexagonMCInstrInfo.h"#include "llvm/ADT/StringExtras.h"#include "llvm/ADT/StringRef.h"#include "llvm/BinaryFormat/ELF.h"#include "llvm/MC/MCAsmBackend.h"#include "llvm/MC/MCCodeEmitter.h"#include "llvm/MC/MCContext.h"#include "llvm/MC/MCDwarf.h"#include "llvm/MC/MCELFStreamer.h"#include "llvm/MC/MCInstrAnalysis.h"#include "llvm/MC/MCInstrInfo.h"#include "llvm/MC/MCObjectWriter.h"#include "llvm/MC/MCRegisterInfo.h"#include "llvm/MC/MCStreamer.h"#include "llvm/MC/MCSubtargetInfo.h"#include "llvm/Support/ErrorHandling.h"#include "llvm/Support/TargetRegistry.h"#include "llvm/Support/raw_ostream.h"#include <cassert>#include <cstdint>#include <new>#include <string>#include "HexagonGenInstrInfo.inc"#include "HexagonGenSubtargetInfo.inc"#include "HexagonGenRegisterInfo.inc"
Go to the source code of this file.
Macros | |
| #define | GET_INSTRINFO_MC_DESC |
| #define | GET_SUBTARGETINFO_MC_DESC |
| #define | GET_REGINFO_MC_DESC |
Variables | |
| cl::opt< Hexagon::ArchEnum > | EnableHVX ("mhvx", cl::desc("Enable Hexagon Vector eXtensions"), cl::values(clEnumValN(Hexagon::ArchEnum::V60, "v60", "Build for HVX v60"), clEnumValN(Hexagon::ArchEnum::V62, "v62", "Build for HVX v62"), clEnumValN(Hexagon::ArchEnum::V65, "v65", "Build for HVX v65"), clEnumValN(Hexagon::ArchEnum::V66, "v66", "Build for HVX v66"), clEnumValN(Hexagon::ArchEnum::Generic, "", "")), cl::init(Hexagon::ArchEnum::NoArch), cl::ValueOptional) |
| static cl::opt< bool > | DisableHVX ("mno-hvx", cl::Hidden, cl::desc("Disable Hexagon Vector eXtensions")) |
| static StringRef | DefaultArch = "hexagonv60" |
| #define GET_INSTRINFO_MC_DESC |
Definition at line 46 of file HexagonMCTargetDesc.cpp.
| #define GET_REGINFO_MC_DESC |
Definition at line 52 of file HexagonMCTargetDesc.cpp.
| #define GET_SUBTARGETINFO_MC_DESC |
Definition at line 49 of file HexagonMCTargetDesc.cpp.
|
static |
Definition at line 273 of file HexagonMCTargetDesc.cpp.
References llvm::SmallVectorTemplateCommon< T >::begin(), llvm::StringRef::empty(), EnableHVX, llvm::SmallVectorTemplateCommon< T >::end(), llvm::Hexagon::Generic, llvm::MCSubtargetInfo::getFeatureBits(), llvm::join(), llvm::Hexagon::NoArch, llvm::SmallVectorTemplateBase< T >::push_back(), llvm::Hexagon::V5, llvm::Hexagon::V55, llvm::Hexagon::V60, llvm::Hexagon::V62, llvm::Hexagon::V65, and llvm::Hexagon::V66.
|
static |
Definition at line 267 of file HexagonMCTargetDesc.cpp.
References llvm::MCSubtargetInfo::getFeatureBits(), and llvm::MCSubtargetInfo::ToggleFeature().
|
static |
Definition at line 222 of file HexagonMCTargetDesc.cpp.
References llvm::MCAsmInfo::addInitialFrameState(), llvm::MCCFIInstruction::createDefCfa(), and llvm::MCRegisterInfo::getDwarfRegNum().
Referenced by LLVMInitializeHexagonTargetMC().
|
static |
Definition at line 235 of file HexagonMCTargetDesc.cpp.
Referenced by LLVMInitializeHexagonTargetMC().
|
static |
Definition at line 455 of file HexagonMCTargetDesc.cpp.
Referenced by LLVMInitializeHexagonTargetMC().
|
static |
Definition at line 216 of file HexagonMCTargetDesc.cpp.
References X.
|
static |
Definition at line 263 of file HexagonMCTargetDesc.cpp.
Referenced by LLVMInitializeHexagonTargetMC().
|
static |
Definition at line 248 of file HexagonMCTargetDesc.cpp.
Referenced by LLVMInitializeHexagonTargetMC().
|
static |
Definition at line 253 of file HexagonMCTargetDesc.cpp.
References llvm::createHexagonELFStreamer().
Referenced by LLVMInitializeHexagonTargetMC().
|
static |
Definition at line 98 of file HexagonMCTargetDesc.cpp.
Referenced by llvm::Hexagon_MC::selectHexagonCPU().
|
static |
Definition at line 316 of file HexagonMCTargetDesc.cpp.
References llvm::find(), and llvm::Hexagon_MC::selectHexagonCPU().
Referenced by llvm::Hexagon_MC::createHexagonMCSubtargetInfo().
| void LLVMInitializeHexagonTargetMC | ( | ) |
Definition at line 460 of file HexagonMCTargetDesc.cpp.
References llvm::createHexagonAsmBackend(), createHexagonMCAsmInfo(), llvm::createHexagonMCCodeEmitter(), createHexagonMCInstPrinter(), createHexagonMCInstrAnalysis(), llvm::createHexagonMCInstrInfo(), llvm::createHexagonMCRegisterInfo(), llvm::Hexagon_MC::createHexagonMCSubtargetInfo(), createHexagonObjectTargetStreamer(), createMCAsmTargetStreamer(), createMCStreamer(), llvm::getTheHexagonTarget(), llvm::TargetRegistry::RegisterAsmTargetStreamer(), llvm::TargetRegistry::RegisterELFStreamer(), llvm::TargetRegistry::RegisterMCAsmBackend(), llvm::TargetRegistry::RegisterMCCodeEmitter(), llvm::TargetRegistry::RegisterMCInstPrinter(), llvm::TargetRegistry::RegisterMCInstrAnalysis(), llvm::TargetRegistry::RegisterMCInstrInfo(), llvm::TargetRegistry::RegisterMCRegInfo(), llvm::TargetRegistry::RegisterMCSubtargetInfo(), llvm::TargetRegistry::RegisterObjectTargetStreamer(), and X.
|
static |
Definition at line 96 of file HexagonMCTargetDesc.cpp.
|
static |
| cl::opt<Hexagon::ArchEnum> EnableHVX("mhvx", cl::desc("Enable Hexagon Vector eXtensions"), cl::values( clEnumValN(Hexagon::ArchEnum::V60, "v60", "Build for HVX v60"), clEnumValN(Hexagon::ArchEnum::V62, "v62", "Build for HVX v62"), clEnumValN(Hexagon::ArchEnum::V65, "v65", "Build for HVX v65"), clEnumValN(Hexagon::ArchEnum::V66, "v66", "Build for HVX v66"), clEnumValN(Hexagon::ArchEnum::Generic, "", "")), cl::init(Hexagon::ArchEnum::NoArch), cl::ValueOptional) |
Referenced by checkFeature().
1.8.13