LLVM: lib/Transforms/IPO/InferFunctionAttrs.cpp Source File (original) (raw)

1

2

3

4

5

6

7

8

15using namespace llvm;

16

17#define DEBUG_TYPE "inferattrs"

18

22

24

25

26

27

28

29 if (F.isDeclaration() && F.hasOptNone()) {

30 if (F.hasFnAttribute(Attribute::NoBuiltin))

33 }

34

36}

37

Module.h This file contains the declarations for the Module class.

static bool inferAllPrototypeAttributes(Module &M, function_ref< TargetLibraryInfo &(Function &)> GetTLI)

Definition InferFunctionAttrs.cpp:19

Interfaces for passes which infer implicit function attributes from the name and signature of functio...

FunctionAnalysisManager FAM

PassT::Result & getResult(IRUnitT &IR, ExtraArgTs... ExtraArgs)

Get the result of an analysis pass for a given IR unit.

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.

static PreservedAnalyses none()

Convenience factory function for the empty preserved set.

static PreservedAnalyses all()

Construct a special preserved set that preserves all passes.

Analysis pass providing the TargetLibraryInfo.

Provides information about what library functions are available for the current target.

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

This is an optimization pass for GlobalISel generic memory operations.

InnerAnalysisManagerProxy< FunctionAnalysisManager, Module > FunctionAnalysisManagerModuleProxy

Provide the FunctionAnalysisManager to Module proxy.

LLVM_ABI bool inferNonMandatoryLibFuncAttrs(Module *M, StringRef Name, const TargetLibraryInfo &TLI)

Analyze the name and prototype of the given function and set any applicable attributes.

LLVM_ABI bool inferAttributesFromOthers(Function &F)

If we can infer one attribute from another on the declaration of a function, explicitly materialize t...

AnalysisManager< Function > FunctionAnalysisManager

Convenience typedef for the Function analysis manager.

AnalysisManager< Module > ModuleAnalysisManager

Convenience typedef for the Module analysis manager.

LLVM_ABI PreservedAnalyses run(Module &M, ModuleAnalysisManager &AM)

Definition InferFunctionAttrs.cpp:38