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

Go to the documentation of this file.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17#ifndef LLVM_TRANSFORMS_SCALAR_ALIGNMENTFROMASSUMPTIONS_H

18#define LLVM_TRANSFORMS_SCALAR_ALIGNMENTFROMASSUMPTIONS_H

19

21

22namespace llvm {

23

30

32 : public PassInfoMixin {

34

35

38

41

43 const SCEV *&AlignSCEV, const SCEV *&OffSCEV);

45};

46}

47

48#endif

This header defines various interfaces for pass management in LLVM.

A cache of @llvm.assume calls within a function.

This class represents a function call, abstracting a target machine's calling convention.

Concrete subclass of DominatorTreeBase that is used to compute a normal dominator tree.

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

This class represents an analyzed expression in the program.

The main scalar evolution driver.

LLVM Value Representation.

This is an optimization pass for GlobalISel generic memory operations.

AnalysisManager< Function > FunctionAnalysisManager

Convenience typedef for the Function analysis manager.

DominatorTree * DT

Definition AlignmentFromAssumptions.h:40

bool extractAlignmentInfo(CallInst *I, unsigned Idx, Value *&AAPtr, const SCEV *&AlignSCEV, const SCEV *&OffSCEV)

bool processAssumption(CallInst *I, unsigned Idx)

ScalarEvolution * SE

Definition AlignmentFromAssumptions.h:39

bool runImpl(Function &F, AssumptionCache &AC, ScalarEvolution *SE_, DominatorTree *DT_)

PreservedAnalyses run(Function &F, FunctionAnalysisManager &AM)

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