#include "bolt/Core/BinarySection.h"
#include "bolt/Core/BinaryContext.h"
#include "bolt/Utils/Utils.h"
#include "llvm/MC/MCStreamer.h"
#include "llvm/Support/CommandLine.h"
#define DEBUG_TYPE …
usingnamespacellvm;
usingnamespacebolt;
namespace opts {
extern cl::opt<bool> PrintRelocations;
extern cl::opt<bool> HotData;
}
uint64_t BinarySection::Count = …;
bool BinarySection::isELF() const { … }
bool BinarySection::isMachO() const { … }
uint64_t
BinarySection::hash(const BinaryData &BD,
std::map<const BinaryData *, uint64_t> &Cache) const { … }
void BinarySection::emitAsData(MCStreamer &Streamer,
const Twine &SectionName) const { … }
void BinarySection::flushPendingRelocations(raw_pwrite_stream &OS,
SymbolResolverFuncTy Resolver) { … }
BinarySection::~BinarySection() { … }
void BinarySection::clearRelocations() { … }
void BinarySection::print(raw_ostream &OS) const { … }
BinarySection::RelocationSetType
BinarySection::reorderRelocations(bool Inplace) const { … }
void BinarySection::reorderContents(const std::vector<BinaryData *> &Order,
bool Inplace) { … }
std::string BinarySection::encodeELFNote(StringRef NameStr, StringRef DescStr,
uint32_t Type) { … }