|
LLVM
8.0.1
|
#include "llvm/Transforms/IPO/ForceFunctionAttrs.h"#include "llvm/ADT/StringSwitch.h"#include "llvm/IR/Function.h"#include "llvm/IR/LLVMContext.h"#include "llvm/IR/Module.h"#include "llvm/Support/Debug.h"#include "llvm/Support/raw_ostream.h"
Go to the source code of this file.
Macros | |
| #define | DEBUG_TYPE "forceattrs" |
Functions | |
| static Attribute::AttrKind | parseAttrKind (StringRef Kind) |
| static void | addForcedAttributes (Function &F) |
| If F has any forced attributes given on the command line, add them. More... | |
| INITIALIZE_PASS (ForceFunctionAttrsLegacyPass, "forceattrs", "Force set function attributes", false, false) Pass *llvm | |
Variables | |
| static cl::list< std::string > | ForceAttributes ("force-attribute", cl::Hidden, cl::desc("Add an attribute to a function. This should be a " "pair of 'function-name:attribute-name', for " "example -force-attribute=foo:noinline. This " "option can be specified multiple times.")) |
| #define DEBUG_TYPE "forceattrs" |
Definition at line 19 of file ForceFunctionAttrs.cpp.
|
static |
If F has any forced attributes given on the command line, add them.
Definition at line 71 of file ForceFunctionAttrs.cpp.
References llvm::Function::addFnAttr(), llvm::dbgs(), ForceAttributes, llvm::Value::getName(), llvm::Function::hasFnAttribute(), Kind, LLVM_DEBUG, llvm::Attribute::None, parseAttrKind(), and llvm::StringRef::split().
Referenced by llvm::ForceFunctionAttrsPass::run().
| INITIALIZE_PASS | ( | ForceFunctionAttrsLegacyPass | , |
| "forceattrs" | , | ||
| "Force set function attributes" | , | ||
| false | , | ||
| false | |||
| ) |
Definition at line 123 of file ForceFunctionAttrs.cpp.
|
static |
Definition at line 28 of file ForceFunctionAttrs.cpp.
References llvm::Attribute::AlwaysInline, llvm::Attribute::ArgMemOnly, llvm::Attribute::Builtin, llvm::StringSwitch< T, R >::Case(), llvm::Attribute::Cold, llvm::Attribute::Convergent, llvm::StringSwitch< T, R >::Default(), llvm::Attribute::InlineHint, llvm::Attribute::JumpTable, Kind, llvm::Attribute::MinSize, llvm::Attribute::Naked, llvm::Attribute::NoBuiltin, llvm::Attribute::NoCfCheck, llvm::Attribute::NoDuplicate, llvm::Attribute::NoImplicitFloat, llvm::Attribute::NoInline, llvm::Attribute::None, llvm::Attribute::NonLazyBind, llvm::Attribute::NoRecurse, llvm::Attribute::NoRedZone, llvm::Attribute::NoReturn, llvm::Attribute::NoUnwind, llvm::Attribute::OptForFuzzing, llvm::Attribute::OptimizeForSize, llvm::Attribute::OptimizeNone, llvm::Attribute::ReadNone, llvm::Attribute::ReadOnly, llvm::Attribute::ReturnsTwice, llvm::Attribute::SafeStack, llvm::Attribute::SanitizeAddress, llvm::Attribute::SanitizeHWAddress, llvm::Attribute::SanitizeMemory, llvm::Attribute::SanitizeThread, llvm::Attribute::ShadowCallStack, llvm::Attribute::SpeculativeLoadHardening, llvm::Attribute::StackProtect, llvm::Attribute::StackProtectReq, llvm::Attribute::StackProtectStrong, llvm::Attribute::StrictFP, and llvm::Attribute::UWTable.
Referenced by addForcedAttributes(), getAttrFromCode(), and readTriple().
|
static |
Referenced by addForcedAttributes(), and llvm::ForceFunctionAttrsPass::run().
1.8.13