LLVM 22.0.0git
|
#include "SPIRVTargetMachine.h"
#include "SPIRV.h"
#include "SPIRVGlobalRegistry.h"
#include "SPIRVLegalizerInfo.h"
#include "SPIRVStructurizerWrapper.h"
#include "SPIRVTargetObjectFile.h"
#include "SPIRVTargetTransformInfo.h"
#include "TargetInfo/SPIRVTargetInfo.h"
#include "llvm/CodeGen/GlobalISel/IRTranslator.h"
#include "llvm/CodeGen/GlobalISel/InstructionSelect.h"
#include "llvm/CodeGen/GlobalISel/Legalizer.h"
#include "llvm/CodeGen/GlobalISel/RegBankSelect.h"
#include "llvm/CodeGen/Passes.h"
#include "llvm/CodeGen/TargetPassConfig.h"
#include "llvm/InitializePasses.h"
#include "llvm/MC/TargetRegistry.h"
#include "llvm/Pass.h"
#include "llvm/Passes/PassBuilder.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Target/TargetOptions.h"
#include "llvm/Transforms/Scalar.h"
#include "llvm/Transforms/Utils.h"
#include <optional>
#include "llvm/Passes/TargetPassRegistry.inc"
Go to the source code of this file.
Macros | |
#define | GET_PASS_REGISTRY "SPIRVPassRegistry.def" |
#define | ADD_CLASS_PASS_TO_PASS_NAME(NAME, CREATE_PASS) |
#define | ADD_CLASS_PASS_TO_PASS_NAME_WITH_PARAMS(NAME, CLASS) |
#define | MODULE_ANALYSIS(NAME, CREATE_PASS) |
#define | MODULE_PASS(NAME, CREATE_PASS) |
#define | MODULE_PASS_WITH_PARAMS(NAME, CLASS, CREATE_PASS, PARSER, PARAMS) |
#define | FUNCTION_ANALYSIS(NAME, CREATE_PASS) |
#define | FUNCTION_ALIAS_ANALYSIS(NAME, CREATE_PASS) |
#define | FUNCTION_PASS(NAME, CREATE_PASS) |
#define | FUNCTION_PASS_WITH_PARAMS(NAME, CLASS, CREATE_PASS, PARSER, PARAMS) |
#define | LOOP_ANALYSIS(NAME, CREATE_PASS) |
#define | LOOP_PASS(NAME, CREATE_PASS) |
#define | MACHINE_FUNCTION_ANALYSIS(NAME, CREATE_PASS) |
#define | MACHINE_FUNCTION_PASS(NAME, CREATE_PASS) |
#define | MACHINE_FUNCTION_PASS_WITH_PARAMS(NAME, CLASS, CREATE_PASS, PARSER, PARAMS) |
#define | ADD_PASS(NAME, CREATE_PASS) |
#define | ADD_PASS_WITH_PARAMS(NAME, CREATE_PASS, PARSER) |
#define | MODULE_PASS(NAME, CREATE_PASS) |
#define | MODULE_PASS_WITH_PARAMS(NAME, CLASS, CREATE_PASS, PARSER, PARAMS) |
#define | FUNCTION_PASS(NAME, CREATE_PASS) |
#define | FUNCTION_PASS_WITH_PARAMS(NAME, CLASS, CREATE_PASS, PARSER, PARAMS) |
#define | LOOP_PASS(NAME, CREATE_PASS) |
#define | MACHINE_FUNCTION_PASS(NAME, CREATE_PASS) |
#define | MACHINE_FUNCTION_PASS_WITH_PARAMS(NAME, CLASS, CREATE_PASS, PARSER, PARAMS) |
#define | MODULE_ANALYSIS(NAME, CREATE_PASS) |
#define | FUNCTION_ANALYSIS(NAME, CREATE_PASS) |
#define | FUNCTION_ALIAS_ANALYSIS(NAME, CREATE_PASS) |
#define | LOOP_ANALYSIS(NAME, CREATE_PASS) |
#define | MACHINE_FUNCTION_ANALYSIS(NAME, CREATE_PASS) |
Functions | |
LLVM_ABI LLVM_EXTERNAL_VISIBILITY void | LLVMInitializeSPIRVTarget () |
static Reloc::Model | getEffectiveRelocModel (std::optional< Reloc::Model > RM) |
Variables | |
static cl::opt< bool > | SPVEnableNonSemanticDI ("spv-emit-nonsemantic-debug-info", cl::desc("Emit SPIR-V NonSemantic.Shader.DebugInfo.100 instructions"), cl::Optional, cl::init(false)) |
#define ADD_CLASS_PASS_TO_PASS_NAME | ( | NAME, | |
CREATE_PASS ) |
#define ADD_CLASS_PASS_TO_PASS_NAME_WITH_PARAMS | ( | NAME, | |
CLASS ) |
#define ADD_PASS | ( | NAME, | |
CREATE_PASS ) |
#define ADD_PASS_WITH_PARAMS | ( | NAME, | |
CREATE_PASS, | |||
PARSER ) |
#define FUNCTION_ALIAS_ANALYSIS | ( | NAME, | |
CREATE_PASS ) |
#define FUNCTION_ALIAS_ANALYSIS | ( | NAME, | |
CREATE_PASS ) |
#define FUNCTION_ANALYSIS | ( | NAME, | |
CREATE_PASS ) |
#define FUNCTION_ANALYSIS | ( | NAME, | |
CREATE_PASS ) |
#define FUNCTION_PASS | ( | NAME, | |
CREATE_PASS ) |
#define FUNCTION_PASS | ( | NAME, | |
CREATE_PASS ) |
#define FUNCTION_PASS_WITH_PARAMS | ( | NAME, | |
CLASS, | |||
CREATE_PASS, | |||
PARSER, | |||
PARAMS ) |
#define FUNCTION_PASS_WITH_PARAMS | ( | NAME, | |
CLASS, | |||
CREATE_PASS, | |||
PARSER, | |||
PARAMS ) |
#define GET_PASS_REGISTRY "SPIRVPassRegistry.def" |
#define LOOP_ANALYSIS | ( | NAME, | |
CREATE_PASS ) |
#define LOOP_ANALYSIS | ( | NAME, | |
CREATE_PASS ) |
#define LOOP_PASS | ( | NAME, | |
CREATE_PASS ) |
#define LOOP_PASS | ( | NAME, | |
CREATE_PASS ) |
#define MACHINE_FUNCTION_ANALYSIS | ( | NAME, | |
CREATE_PASS ) |
#define MACHINE_FUNCTION_ANALYSIS | ( | NAME, | |
CREATE_PASS ) |
#define MACHINE_FUNCTION_PASS | ( | NAME, | |
CREATE_PASS ) |
#define MACHINE_FUNCTION_PASS | ( | NAME, | |
CREATE_PASS ) |
#define MACHINE_FUNCTION_PASS_WITH_PARAMS | ( | NAME, | |
CLASS, | |||
CREATE_PASS, | |||
PARSER, | |||
PARAMS ) |
#define MACHINE_FUNCTION_PASS_WITH_PARAMS | ( | NAME, | |
CLASS, | |||
CREATE_PASS, | |||
PARSER, | |||
PARAMS ) |
#define MODULE_ANALYSIS | ( | NAME, | |
CREATE_PASS ) |
#define MODULE_ANALYSIS | ( | NAME, | |
CREATE_PASS ) |
#define MODULE_PASS | ( | NAME, | |
CREATE_PASS ) |
#define MODULE_PASS | ( | NAME, | |
CREATE_PASS ) |
#define MODULE_PASS_WITH_PARAMS | ( | NAME, | |
CLASS, | |||
CREATE_PASS, | |||
PARSER, | |||
PARAMS ) |
#define MODULE_PASS_WITH_PARAMS | ( | NAME, | |
CLASS, | |||
CREATE_PASS, | |||
PARSER, | |||
PARAMS ) |
|
static |
Definition at line 63 of file SPIRVTargetMachine.cpp.
References llvm::Reloc::PIC_.
LLVM_ABI LLVM_EXTERNAL_VISIBILITY void LLVMInitializeSPIRVTarget | ( | ) |
Definition at line 39 of file SPIRVTargetMachine.cpp.
References llvm::PassRegistry::getPassRegistry(), llvm::getTheSPIRV32Target(), llvm::getTheSPIRV64Target(), llvm::getTheSPIRVLogicalTarget(), llvm::initializeGlobalISel(), llvm::initializeSPIRVAsmPrinterPass(), llvm::initializeSPIRVConvergenceRegionAnalysisWrapperPassPass(), llvm::initializeSPIRVEmitIntrinsicsPass(), llvm::initializeSPIRVEmitNonSemanticDIPass(), llvm::initializeSPIRVLegalizePointerCastPass(), llvm::initializeSPIRVMergeRegionExitTargetsPass(), llvm::initializeSPIRVModuleAnalysisPass(), llvm::initializeSPIRVPostLegalizerPass(), llvm::initializeSPIRVPreLegalizerCombinerPass(), llvm::initializeSPIRVPreLegalizerPass(), llvm::initializeSPIRVPrepareFunctionsPass(), llvm::initializeSPIRVRegularizerPass(), llvm::initializeSPIRVStripConvergentIntrinsicsPass(), llvm::initializeSPIRVStructurizerPass(), LLVM_ABI, LLVM_EXTERNAL_VISIBILITY, X, and Y.
|
static |