LLVM 20.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/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 |
class | llvm::AttributeSet |
struct | llvm::DenseMapInfo< AttributeSet, void > |
class | llvm::AttributeList |
struct | llvm::AttributeList::index_iterator |
struct | llvm::AttributeList::index_iterator::int_wrapper |
struct | llvm::DenseMapInfo< AttributeList, void > |
class | llvm::AttrBuilder |
Namespaces | |
namespace | llvm |
This is an optimization pass for GlobalISel generic memory operations. | |
namespace | llvm::AttributeFuncs |
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 } |
enum | llvm::AttributeFuncs::AttributeSafetyKind : uint8_t { llvm::AttributeFuncs::ASK_SAFE_TO_DROP = 1 , llvm::AttributeFuncs::ASK_UNSAFE_TO_DROP = 2 , llvm::AttributeFuncs::ASK_ALL = ASK_SAFE_TO_DROP | ASK_UNSAFE_TO_DROP } |
Functions | |
LLVMAttributeRef | llvm::wrap (Attribute Attr) |
Attribute | llvm::unwrap (LLVMAttributeRef Attr) |
bool | llvm::AttributeFuncs::isNoFPClassCompatibleType (Type *Ty) |
Returns true if this is a type legal for the 'nofpclass' attribute. | |
AttributeMask | llvm::AttributeFuncs::typeIncompatible (Type *Ty, AttributeSet AS, AttributeSafetyKind ASK=ASK_ALL) |
Which attributes cannot be applied to a type. | |
AttributeMask | llvm::AttributeFuncs::getUBImplyingAttributes () |
Get param/return attributes which imply immediate undefined behavior if an invalid value is passed. | |
bool | llvm::AttributeFuncs::areInlineCompatible (const Function &Caller, const Function &Callee) |
bool | llvm::AttributeFuncs::areOutlineCompatible (const Function &A, const Function &B) |
Checks if there are any incompatible function attributes between A and B . | |
void | llvm::AttributeFuncs::mergeAttributesForInlining (Function &Caller, const Function &Callee) |
Merge caller's and callee's attributes. | |
void | llvm::AttributeFuncs::mergeAttributesForOutlining (Function &Base, const Function &ToMerge) |
Merges the functions attributes from ToMerge into function Base . | |
void | llvm::AttributeFuncs::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 89 of file Attributes.h.