From 1558bb80c01b695ce12642527cbfccf16cf54ece Mon Sep 17 00:00:00 2001 From: Yuanfang Chen Date: Sun, 25 Jul 2021 21:12:28 -0700 Subject: [Object] make SourceMgr available to MCContext during inline asm symbols collection Fixes PR51210. --- llvm/lib/Object/ModuleSymbolTable.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'llvm/lib/Object/ModuleSymbolTable.cpp') diff --git a/llvm/lib/Object/ModuleSymbolTable.cpp b/llvm/lib/Object/ModuleSymbolTable.cpp index 9cdc281..9a79de7 100644 --- a/llvm/lib/Object/ModuleSymbolTable.cpp +++ b/llvm/lib/Object/ModuleSymbolTable.cpp @@ -99,7 +99,11 @@ initializeRecordStreamer(const Module &M, if (!MCII) return; - MCContext MCCtx(TT, MAI.get(), MRI.get(), STI.get()); + std::unique_ptr Buffer(MemoryBuffer::getMemBuffer(InlineAsm)); + SourceMgr SrcMgr; + SrcMgr.AddNewSourceBuffer(std::move(Buffer), SMLoc()); + + MCContext MCCtx(TT, MAI.get(), MRI.get(), STI.get(), &SrcMgr); std::unique_ptr MOFI( T->createMCObjectFileInfo(MCCtx, /*PIC=*/false)); MOFI->setSDKVersion(M.getSDKVersion()); @@ -107,9 +111,6 @@ initializeRecordStreamer(const Module &M, RecordStreamer Streamer(MCCtx, M); T->createNullTargetStreamer(Streamer); - std::unique_ptr Buffer(MemoryBuffer::getMemBuffer(InlineAsm)); - SourceMgr SrcMgr; - SrcMgr.AddNewSourceBuffer(std::move(Buffer), SMLoc()); std::unique_ptr Parser( createMCAsmParser(SrcMgr, MCCtx, Streamer, *MAI)); -- cgit v1.1