LLVM: lib/Target/AMDGPU/AMDGPUPerfHintAnalysis.h Source File (original) (raw)

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15#ifndef LLVM_LIB_TARGET_AMDGPU_AMDGPUPERFHINTANALYSIS_H

16#define LLVM_LIB_TARGET_AMDGPU_AMDGPUPERFHINTANALYSIS_H

17

20

23

24namespace llvm {

25

30

32public:

44

46

47private:

49

50public:

52

53

55

56

58

60

62};

63

65 : public PassInfoMixin {

67 std::unique_ptr Impl;

68

71

73};

74

75}

76#endif

This header provides classes for managing passes over SCCs of the call graph.

This header defines various interfaces for pass management in LLVM.

Implements a lazy call graph analysis and related passes for the new pass manager.

bool isMemoryBound(const Function *F) const

AMDGPUPerfHintAnalysis()=default

bool needsWaveLimiter(const Function *F) const

bool run(const GCNTargetMachine &TM, LazyCallGraph &CG)

bool runOnSCC(const GCNTargetMachine &TM, CallGraphSCC &SCC)

ValueMap< const Function *, FuncInfo > FuncInfoMap

Definition AMDGPUPerfHintAnalysis.h:45

CallGraphSCC - This is a single SCC that a CallGraphSCCPass is run on.

A lazily constructed view of the call graph of a module.

A Module instance is used to store all the information related to an LLVM module.

A set of analyses that are preserved following a run of a transformation pass.

This is an optimization pass for GlobalISel generic memory operations.

AnalysisManager< Module > ModuleAnalysisManager

Convenience typedef for the Module analysis manager.

Implement std::hash so that hash_code can be used in STL containers.

AMDGPUPerfHintAnalysisPass(const GCNTargetMachine &TM)

Definition AMDGPUPerfHintAnalysis.h:69

std::unique_ptr< AMDGPUPerfHintAnalysis > Impl

Definition AMDGPUPerfHintAnalysis.h:67

const GCNTargetMachine & TM

Definition AMDGPUPerfHintAnalysis.h:66

PreservedAnalyses run(Module &M, ModuleAnalysisManager &AM)

unsigned LSMInstCost

Definition AMDGPUPerfHintAnalysis.h:37

FuncInfo()

Definition AMDGPUPerfHintAnalysis.h:40

unsigned InstCost

Definition AMDGPUPerfHintAnalysis.h:35

unsigned IAMInstCost

Definition AMDGPUPerfHintAnalysis.h:36

bool HasDenseGlobalMemAcc

Definition AMDGPUPerfHintAnalysis.h:38

unsigned MemInstCost

Definition AMDGPUPerfHintAnalysis.h:34

A CRTP mix-in to automatically provide informational APIs needed for passes.