#include "MachOLinkGraphBuilder.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/Sequence.h"
#include <optional>
#define DEBUG_TYPE …
static const char *CommonSectionName = …;
namespace llvm {
namespace jitlink {
MachOLinkGraphBuilder::~MachOLinkGraphBuilder() = default;
Expected<std::unique_ptr<LinkGraph>> MachOLinkGraphBuilder::buildGraph() { … }
MachOLinkGraphBuilder::MachOLinkGraphBuilder(
const object::MachOObjectFile &Obj, Triple TT, SubtargetFeatures Features,
LinkGraph::GetEdgeKindNameFunction GetEdgeKindName)
: … { … }
void MachOLinkGraphBuilder::addCustomSectionParser(
StringRef SectionName, SectionParserFunction Parser) { … }
Linkage MachOLinkGraphBuilder::getLinkage(uint16_t Desc) { … }
Scope MachOLinkGraphBuilder::getScope(StringRef Name, uint8_t Type) { … }
bool MachOLinkGraphBuilder::isAltEntry(const NormalizedSymbol &NSym) { … }
bool MachOLinkGraphBuilder::isDebugSection(const NormalizedSection &NSec) { … }
bool MachOLinkGraphBuilder::isZeroFillSection(const NormalizedSection &NSec) { … }
unsigned
MachOLinkGraphBuilder::getPointerSize(const object::MachOObjectFile &Obj) { … }
llvm::endianness
MachOLinkGraphBuilder::getEndianness(const object::MachOObjectFile &Obj) { … }
Section &MachOLinkGraphBuilder::getCommonSection() { … }
Error MachOLinkGraphBuilder::createNormalizedSections() { … }
Error MachOLinkGraphBuilder::createNormalizedSymbols() { … }
void MachOLinkGraphBuilder::addSectionStartSymAndBlock(
unsigned SecIndex, Section &GraphSec, orc::ExecutorAddr Address,
const char *Data, orc::ExecutorAddrDiff Size, uint32_t Alignment,
bool IsLive) { … }
Error MachOLinkGraphBuilder::graphifyRegularSymbols() { … }
Symbol &MachOLinkGraphBuilder::createStandardGraphSymbol(NormalizedSymbol &NSym,
Block &B, size_t Size,
bool IsText,
bool IsNoDeadStrip,
bool IsCanonical) { … }
Error MachOLinkGraphBuilder::graphifySectionsWithCustomParsers() { … }
Error MachOLinkGraphBuilder::graphifyCStringSection(
NormalizedSection &NSec, std::vector<NormalizedSymbol *> NSyms) { … }
Error CompactUnwindSplitter::operator()(LinkGraph &G) { … }
}
}