|
LLVM 22.0.0git
|
This file contains the simple types necessary to represent the attributes associated with functions and their calls. More...
#include "llvm-c/Types.h"#include "llvm/ADT/ArrayRef.h"#include "llvm/ADT/BitmaskEnum.h"#include "llvm/ADT/StringRef.h"#include "llvm/Config/llvm-config.h"#include "llvm/Support/Alignment.h"#include "llvm/Support/CodeGen.h"#include "llvm/Support/Compiler.h"#include "llvm/Support/ModRef.h"#include "llvm/Support/PointerLikeTypeTraits.h"#include <cassert>#include <cstdint>#include <optional>#include <string>#include <utility>#include "llvm/IR/Attributes.inc"Go to the source code of this file.
Classes | |
| class | llvm::Attribute |
| Functions, function parameters, and return types can have attributes to indicate how they should be treated by optimizations and code generation. More... | |
| class | llvm::AttributeSet |
| This class holds the attributes for a particular argument, parameter, function, or return value. More... | |
| struct | llvm::DenseMapInfo< AttributeSet, void > |
| Provide DenseMapInfo for AttributeSet. More... | |
Namespaces | |
| namespace | llvm |
| This is an optimization pass for GlobalISel generic memory operations. | |
Macros | |
| #define | GET_ATTR_ENUM |
Enumerations | |
| enum class | llvm::AllocFnKind : uint64_t { llvm::Unknown = 0 , llvm::Alloc = 1 << 0 , llvm::Realloc = 1 << 1 , llvm::Free = 1 << 2 , llvm::Uninitialized = 1 << 3 , llvm::Zeroed = 1 << 4 , llvm::Aligned = 1 << 5 } |
Functions | |
| LLVMAttributeRef | llvm::wrap (Attribute Attr) |
| Attribute | llvm::unwrap (LLVMAttributeRef Attr) |
| LLVM_ABI AttributeMask | llvm::typeIncompatible (Type *Ty, AttributeSet AS, AttributeSafetyKind ASK=ASK_ALL) |
| This class holds the attributes for a function, its return value, and its parameters. | |
| LLVM_ABI AttributeMask | llvm::getUBImplyingAttributes () |
| Get param/return attributes which imply immediate undefined behavior if an invalid value is passed. | |
| LLVM_ABI bool | llvm::areInlineCompatible (const Function &Caller, const Function &Callee) |
| LLVM_ABI bool | llvm::areOutlineCompatible (const Function &A, const Function &B) |
Checks if there are any incompatible function attributes between A and B. | |
| LLVM_ABI void | llvm::mergeAttributesForInlining (Function &Caller, const Function &Callee) |
| Merge caller's and callee's attributes. | |
| LLVM_ABI void | llvm::mergeAttributesForOutlining (Function &Base, const Function &ToMerge) |
Merges the functions attributes from ToMerge into function Base. | |
| LLVM_ABI void | llvm::updateMinLegalVectorWidthAttr (Function &Fn, uint64_t Width) |
| Update min-legal-vector-width if it is in Attribute and less than Width. | |
This file contains the simple types necessary to represent the attributes associated with functions and their calls.
Definition in file Attributes.h.
| #define GET_ATTR_ENUM |
Definition at line 91 of file Attributes.h.