LLVM: lib/Target/SPIRV/SPIRVTargetMachine.h Source File (original) (raw)

1

2

3

4

5

6

7

8

9

10

11

12

13#ifndef LLVM_LIB_TARGET_SPIRV_SPIRVTARGETMACHINE_H

14#define LLVM_LIB_TARGET_SPIRV_SPIRVTARGETMACHINE_H

15

18#include

19

20namespace llvm {

22 std::unique_ptr TLOF;

24

25public:

28 std::optionalReloc::Model RM,

30 bool JIT);

31

33

35 return &Subtarget;

36 }

37

39

42

44 return TLOF.get();

45 }

46

48};

49}

50

51#endif

PassBuilder PB(Machine, PassOpts->PTO, std::nullopt, &PIC)

CodeGenTargetMachineImpl(const Target &T, StringRef DataLayoutString, const Triple &TT, StringRef CPU, StringRef FS, const TargetOptions &Options, Reloc::Model RM, CodeModel::Model CM, CodeGenOptLevel OL)

This class provides access to building LLVM's passes.

void registerPassBuilderCallbacks(PassBuilder &PB) override

Allow the target to modify the pass pipeline.

TargetLoweringObjectFile * getObjFileLowering() const override

Definition SPIRVTargetMachine.h:43

SPIRVTargetMachine(const Target &T, const Triple &TT, StringRef CPU, StringRef FS, const TargetOptions &Options, std::optional< Reloc::Model > RM, std::optional< CodeModel::Model > CM, CodeGenOptLevel OL, bool JIT)

const SPIRVSubtarget * getSubtargetImpl() const

Definition SPIRVTargetMachine.h:32

TargetTransformInfo getTargetTransformInfo(const Function &F) const override

Get a TargetTransformInfo implementation for the target.

const SPIRVSubtarget * getSubtargetImpl(const Function &) const override

Virtual method implemented by subclasses that returns a reference to that target's TargetSubtargetInf...

Definition SPIRVTargetMachine.h:34

TargetPassConfig * createPassConfig(PassManagerBase &PM) override

Create a pass configuration object to be used by addPassToEmitX methods for generating a pipeline of ...

bool usesPhysRegsForValues() const override

True if the target uses physical regs (as nearly all targets do).

Definition SPIRVTargetMachine.h:41

StringRef - Represent a constant reference to a string, i.e.

Target-Independent Code Generator Pass Configuration Options.

This pass provides access to the codegen interfaces that are needed for IR-level transformations.

Target - Wrapper for Target specific information.

Triple - Helper class for working with autoconf configuration names.

PassManagerBase - An abstract interface to allow code to add passes to a pass manager without having ...

This is an optimization pass for GlobalISel generic memory operations.

CodeGenOptLevel

Code generation optimization level.