LLVM 22.0.0git
SPIRV.h
Go to the documentation of this file.
1//===-- SPIRV.h - Top-level interface for SPIR-V representation -*- C++ -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9#ifndef LLVM_LIB_TARGET_SPIRV_SPIRV_H
10#define LLVM_LIB_TARGET_SPIRV_SPIRV_H
11
15
16namespace llvm {
18class SPIRVSubtarget;
21
37 const SPIRVSubtarget &Subtarget,
38 const RegisterBankInfo &RBI);
39
56} // namespace llvm
57
58#endif // LLVM_LIB_TARGET_SPIRV_SPIRV_H
FunctionPass class - This class is used to implement most global optimizations.
Definition Pass.h:314
MachineFunctionPass - This class adapts the FunctionPass interface to allow convenient creation of pa...
ModulePass class - This class is used to implement unstructured interprocedural optimizations and ana...
Definition Pass.h:255
PassRegistry - This class manages the registration and intitialization of the pass subsystem as appli...
Holds all the information related to register banks.
This is an optimization pass for GlobalISel generic memory operations.
void initializeSPIRVEmitIntrinsicsPass(PassRegistry &)
FunctionPass * createSPIRVStructurizerPass()
MachineFunctionPass * createSPIRVEmitNonSemanticDIPass(SPIRVTargetMachine *TM)
ModulePass * createSPIRVEmitIntrinsicsPass(SPIRVTargetMachine *TM)
void initializeSPIRVPrepareFunctionsPass(PassRegistry &)
void initializeSPIRVLegalizeImplicitBindingPass(PassRegistry &)
FunctionPass * createSPIRVPreLegalizerPass()
void initializeSPIRVMergeRegionExitTargetsPass(PassRegistry &)
FunctionPass * createSPIRVStripConvergenceIntrinsicsPass()
void initializeSPIRVPreLegalizerCombinerPass(PassRegistry &)
void initializeSPIRVLegalizePointerCastPass(PassRegistry &)
FunctionPass * createSPIRVPreLegalizerCombiner()
void initializeSPIRVModuleAnalysisPass(PassRegistry &)
FunctionPass * createSPIRVPostLegalizerPass()
void initializeSPIRVRegularizerPass(PassRegistry &)
void initializeSPIRVPostLegalizerPass(PassRegistry &)
void initializeSPIRVCBufferAccessLegacyPass(PassRegistry &)
ModulePass * createSPIRVCBufferAccessLegacyPass()
InstructionSelector * createSPIRVInstructionSelector(const SPIRVTargetMachine &TM, const SPIRVSubtarget &Subtarget, const RegisterBankInfo &RBI)
void initializeSPIRVAsmPrinterPass(PassRegistry &)
FunctionPass * createSPIRVRegularizerPass()
void initializeSPIRVStructurizerPass(PassRegistry &)
void initializeSPIRVEmitNonSemanticDIPass(PassRegistry &)
FunctionPass * createSPIRVMergeRegionExitTargetsPass()
void initializeSPIRVPreLegalizerPass(PassRegistry &)
void initializeSPIRVConvergenceRegionAnalysisWrapperPassPass(PassRegistry &)
ModulePass * createSPIRVPrepareFunctionsPass(const SPIRVTargetMachine &TM)
FunctionPass * createSPIRVLegalizePointerCastPass(SPIRVTargetMachine *TM)
void initializeSPIRVStripConvergentIntrinsicsPass(PassRegistry &)
ModulePass * createSPIRVLegalizeImplicitBindingPass()