28void MachineModuleInfoMachO::anchor() {}
29void MachineModuleInfoELF::anchor() {}
30void MachineModuleInfoCOFF::anchor() {}
31void MachineModuleInfoWasm::anchor() {}
33using PairTy = std::pair<MCSymbol *, MachineModuleInfoImpl::StubValueTy>;
67 const auto *Flag = mdconst::extract_or_null<ConstantInt>(
68 M->getModuleFlag(
"ptrauth-sign-personality"));
69 HasSignedPersonality = Flag && Flag->getZExtValue() == 1;
This file contains the declarations for the subclasses of Constant, which represent the different fla...
This file defines the DenseMap class.
Module.h This file contains the declarations for the Module class.
static int SortSymbolPair(const PairTy *LHS, const PairTy *RHS)
std::pair< MCSymbol *, const MCExpr * > ExprStubPairTy
std::pair< MCSymbol *, MachineModuleInfoImpl::StubValueTy > PairTy
static int SortAuthStubPair(const ExprStubPairTy *LHS, const ExprStubPairTy *RHS)
MachineModuleInfoELF(const MachineModuleInfo &)
std::vector< std::pair< MCSymbol *, StubValueTy > > SymbolListTy
static SymbolListTy getSortedStubs(DenseMap< MCSymbol *, StubValueTy > &)
Return the entries from a DenseMap in a deterministic sorted orer.
std::vector< std::pair< MCSymbol *, const MCExpr * > > ExprStubListTy
A variant of SymbolListTy where the stub is a generalized MCExpr.
static ExprStubListTy getSortedExprStubs(DenseMap< MCSymbol *, const MCExpr * > &)
Return the entries from a DenseMap in a deterministic sorted orer.
This class contains meta information specific to a module.
const Module * getModule() const
A Module instance is used to store all the information related to an LLVM module.
int compare(StringRef RHS) const
compare - Compare two strings; the result is negative, zero, or positive if this string is lexicograp...
StringRef getName() const
Return a constant reference to the value's name.
This is an optimization pass for GlobalISel generic memory operations.
void array_pod_sort(IteratorTy Start, IteratorTy End)
array_pod_sort - This sorts an array with the specified start and end extent.