@@ -123,6 +123,7 @@ void BinaryContext::logBOLTErrorsAndQuitOnFatal(Error E) {
123123BinaryContext::BinaryContext (std::unique_ptr<MCContext> Ctx,
124124 std::unique_ptr<DWARFContext> DwCtx,
125125 std::unique_ptr<Triple> TheTriple,
126+ std::shared_ptr<orc::SymbolStringPool> SSP,
126127 const Target *TheTarget, std::string TripleName,
127128 std::unique_ptr<MCCodeEmitter> MCE,
128129 std::unique_ptr<MCObjectFileInfo> MOFI,
@@ -136,12 +137,12 @@ BinaryContext::BinaryContext(std::unique_ptr<MCContext> Ctx,
136137 std::unique_ptr<MCDisassembler> DisAsm,
137138 JournalingStreams Logger)
138139 : Ctx(std::move(Ctx)), DwCtx(std::move(DwCtx)),
139- TheTriple (std::move(TheTriple)), TheTarget(TheTarget ),
140- TripleName(TripleName ), MCE(std::move(MCE)), MOFI (std::move(MOFI )),
141- AsmInfo (std::move(AsmInfo )), MII (std::move(MII )), STI (std::move(STI )),
142- InstPrinter (std::move(InstPrinter )), MIA (std::move(MIA )),
143- MIB (std::move(MIB )), MRI (std::move(MRI )), DisAsm (std::move(DisAsm )),
144- Logger(Logger), InitialDynoStats(isAArch64()) {
140+ TheTriple (std::move(TheTriple)), SSP(std::move(SSP) ),
141+ TheTarget(TheTarget ), TripleName(TripleName), MCE (std::move(MCE )),
142+ MOFI (std::move(MOFI )), AsmInfo (std::move(AsmInfo )), MII (std::move(MII )),
143+ STI (std::move(STI )), InstPrinter (std::move(InstPrinter )),
144+ MIA (std::move(MIA )), MIB (std::move(MIB )), MRI (std::move(MRI )),
145+ DisAsm(std::move(DisAsm)), Logger(Logger), InitialDynoStats(isAArch64()) {
145146 RegularPageSize = isAArch64 () ? RegularPageSizeAArch64 : RegularPageSizeX86;
146147 PageAlign = opts::NoHugePages ? RegularPageSize : HugePageSize;
147148}
@@ -159,8 +160,9 @@ BinaryContext::~BinaryContext() {
159160// / Create BinaryContext for a given architecture \p ArchName and
160161// / triple \p TripleName.
161162Expected<std::unique_ptr<BinaryContext>> BinaryContext::createBinaryContext (
162- Triple TheTriple, StringRef InputFileName, SubtargetFeatures *Features,
163- bool IsPIC, std::unique_ptr<DWARFContext> DwCtx, JournalingStreams Logger) {
163+ Triple TheTriple, std::shared_ptr<orc::SymbolStringPool> SSP,
164+ StringRef InputFileName, SubtargetFeatures *Features, bool IsPIC,
165+ std::unique_ptr<DWARFContext> DwCtx, JournalingStreams Logger) {
164166 StringRef ArchName = " " ;
165167 std::string FeaturesStr = " " ;
166168 switch (TheTriple.getArch ()) {
@@ -283,8 +285,8 @@ Expected<std::unique_ptr<BinaryContext>> BinaryContext::createBinaryContext(
283285
284286 auto BC = std::make_unique<BinaryContext>(
285287 std::move (Ctx), std::move (DwCtx), std::make_unique<Triple>(TheTriple),
286- TheTarget, std::string (TripleName ), std::move (MCE ), std::move (MOFI ),
287- std::move (AsmInfo), std::move (MII), std::move (STI),
288+ std::move (SSP ), TheTarget, std::string (TripleName ), std::move (MCE ),
289+ std::move (MOFI), std::move ( AsmInfo), std::move (MII), std::move (STI),
288290 std::move (InstructionPrinter), std::move (MIA), nullptr , std::move (MRI),
289291 std::move (DisAsm), Logger);
290292
0 commit comments