LLVM: include/llvm/Transforms/InstCombine/InstCombine.h Source File (original) (raw)

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16#ifndef LLVM_TRANSFORMS_INSTCOMBINE_INSTCOMBINE_H

17#define LLVM_TRANSFORMS_INSTCOMBINE_INSTCOMBINE_H

18

22

23#define DEBUG_TYPE "instcombine"

25

26namespace llvm {

27

29

31

34

36

39 return *this;

40 }

41

44 return *this;

45 }

46};

47

49private:

52 static char ID;

53

54public:

58

60};

61

62

63

64

65

68

69public:

70 static char ID;

71

73

76};

77

78

79

80

81

82

83

84

85

86

87

88

89

91}

92

93#undef DEBUG_TYPE

94

95#endif

This header defines various interfaces for pass management in LLVM.

A container for analyses that lazily runs them and caches their results.

Represent the analysis usage information of a pass.

FunctionPass class - This class is used to implement most global optimizations.

void printPipeline(raw_ostream &OS, function_ref< StringRef(StringRef)> MapClassName2PassName)

PreservedAnalyses run(Function &F, FunctionAnalysisManager &AM)

The legacy pass manager's instcombine pass.

InstructionCombiningPass()

void getAnalysisUsage(AnalysisUsage &AU) const override

getAnalysisUsage - This function should be overriden by passes that need analysis information to do t...

bool runOnFunction(Function &F) override

runOnFunction - Virtual method overriden by subclasses to do the per-function processing of the pass.

InstructionWorklist - This is the worklist management logic for InstCombine and other simplification ...

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

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

LLVM Value Representation.

An efficient, type-erasing, non-owning reference to a callable.

This class implements an extremely fast bulk output stream that can only output to a stream.

This is an optimization pass for GlobalISel generic memory operations.

FunctionPass * createInstructionCombiningPass()

static constexpr unsigned InstCombineDefaultMaxIterations

InstCombineOptions & setMaxIterations(unsigned Value)

InstCombineOptions & setVerifyFixpoint(bool Value)

InstCombineOptions()=default

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