LLVM 20.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 {
17class SPIRVTargetMachine;
18class SPIRVSubtarget;
19class InstructionSelector;
20class RegisterBankInfo;
21
22ModulePass *createSPIRVPrepareFunctionsPass(const SPIRVTargetMachine &TM);
31 const SPIRVSubtarget &Subtarget,
32 const RegisterBankInfo &RBI);
33
39} // namespace llvm
40
41#endif // LLVM_LIB_TARGET_SPIRV_SPIRV_H
const char LLVMTargetMachineRef TM
FunctionPass class - This class is used to implement most global optimizations.
Definition: Pass.h:310
ModulePass class - This class is used to implement unstructured interprocedural optimizations and ana...
Definition: Pass.h:251
PassRegistry - This class manages the registration and intitialization of the pass subsystem as appli...
Definition: PassRegistry.h:37
Holds all the information related to register banks.
This is an optimization pass for GlobalISel generic memory operations.
Definition: AddressRanges.h:18
void initializeSPIRVEmitIntrinsicsPass(PassRegistry &)
ModulePass * createSPIRVEmitIntrinsicsPass(SPIRVTargetMachine *TM)
FunctionPass * createSPIRVPreLegalizerPass()
FunctionPass * createSPIRVStripConvergenceIntrinsicsPass()
void initializeSPIRVModuleAnalysisPass(PassRegistry &)
FunctionPass * createSPIRVPostLegalizerPass()
void initializeSPIRVPostLegalizerPass(PassRegistry &)
InstructionSelector * createSPIRVInstructionSelector(const SPIRVTargetMachine &TM, const SPIRVSubtarget &Subtarget, const RegisterBankInfo &RBI)
FunctionPass * createSPIRVRegularizerPass()
FunctionPass * createSPIRVMergeRegionExitTargetsPass()
void initializeSPIRVPreLegalizerPass(PassRegistry &)
void initializeSPIRVConvergenceRegionAnalysisWrapperPassPass(PassRegistry &)
ModulePass * createSPIRVPrepareFunctionsPass(const SPIRVTargetMachine &TM)