diff --git a/llvm/unittests/Transforms/Instrumentation/MemProfUseTest.cpp b/llvm/unittests/Transforms/Instrumentation/MemProfUseTest.cpp index ec81d2e560916..2f703fd74b567 100644 --- a/llvm/unittests/Transforms/Instrumentation/MemProfUseTest.cpp +++ b/llvm/unittests/Transforms/Instrumentation/MemProfUseTest.cpp @@ -434,31 +434,30 @@ attributes #1 = { "no-trapping-math"="true" "stack-protector-buffer-size"="8" "t ASSERT_THAT_ERROR(Writer.mergeProfileKind(InstrProfKind::MemProf), Succeeded()); - const std::pair Frames[] = { - // The call sites within foo. - {0, {GUIDFoo, 1, 8, false}}, - {1, {GUIDFoo, 2, 3, false}}, - {2, {GUIDFoo, 3, 3, false}}, - // Line/column numbers below don't matter. - {3, {GUIDBar, 9, 9, false}}, - {4, {GUIDZzz, 9, 9, false}}, - {5, {GUIDBaz, 9, 9, false}}}; - for (const auto &[FrameId, Frame] : Frames) - Writer.addMemProfFrame(FrameId, Frame, Err); - - const std::pair> - CallStacks[] = { - {0x111, {3, 0}}, // bar called by foo - {0x222, {4, 1}}, // zzz called by foo - {0x333, {5, 2}} // baz called by foo - }; - for (const auto &[CSId, CallStack] : CallStacks) - Writer.addMemProfCallStack(CSId, CallStack, Err); - const IndexedMemProfRecord IndexedMR = makeRecordV2( /*AllocFrames=*/{0x111, 0x222, 0x333}, /*CallSiteFrames=*/{}, MIB, memprof::getHotColdSchema()); - Writer.addMemProfRecord(/*Id=*/0x9999, IndexedMR); + + memprof::IndexedMemProfData MemProfData; + // The call sites within foo. + MemProfData.Frames.try_emplace(0, GUIDFoo, 1, 8, false); + MemProfData.Frames.try_emplace(1, GUIDFoo, 2, 3, false); + MemProfData.Frames.try_emplace(2, GUIDFoo, 3, 3, false); + // Line/column numbers below don't matter. + MemProfData.Frames.try_emplace(3, GUIDBar, 9, 9, false); + MemProfData.Frames.try_emplace(4, GUIDZzz, 9, 9, false); + MemProfData.Frames.try_emplace(5, GUIDBaz, 9, 9, false); + MemProfData.CallStacks.try_emplace( + 0x111, + std::initializer_list{3, 0}); // bar called by foo + MemProfData.CallStacks.try_emplace( + 0x222, + std::initializer_list{4, 1}); // zzz called by foo + MemProfData.CallStacks.try_emplace( + 0x333, + std::initializer_list{5, 2}); // baz called by foo + MemProfData.Records.try_emplace(0x9999, IndexedMR); + Writer.addMemProfData(MemProfData, Err); auto Profile = Writer.writeBuffer();