[llvm-branch-commits] [misexpect] Support diagnostics from frontend profile data (PR #96524)

2024-07-22 Thread Teresa Johnson via llvm-branch-commits
@@ -369,9 +369,21 @@ static bool lowerExpectIntrinsic(Function &F) { if (BranchInst *BI = dyn_cast(BB.getTerminator())) { if (handleBranchExpect(*BI)) ExpectIntrinsicsHandled++; + else { +SmallVector Weights; +if (extractBranchWeights(*BI,

[llvm-branch-commits] [misexpect] Support diagnostics from frontend profile data (PR #96524)

2024-07-22 Thread Teresa Johnson via llvm-branch-commits
@@ -3,7 +3,7 @@ ; RUN: llvm-profdata merge %S/Inputs/misexpect-branch-correct.proftext -o %t.profdata -; RUN: opt < %s -passes="function(lower-expect),pgo-instr-use" -pgo-test-profile-file=%t.profdata -pgo-missing-annotations -pass-remarks=missing-annotation -S 2>&1 | File

[llvm-branch-commits] [NFC][memprof] Use %p to print addresses (PR #98577)

2024-07-11 Thread Teresa Johnson via llvm-branch-commits
https://github.com/teresajohnson approved this pull request. https://github.com/llvm/llvm-project/pull/98577 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [llvm] [ThinLTO][Bitcode] Generate import type in bitcode (PR #87600)

2024-05-15 Thread Teresa Johnson via llvm-branch-commits
https://github.com/teresajohnson approved this pull request. https://github.com/llvm/llvm-project/pull/87600 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [llvm] [ThinLTO] Generate import status in per-module combined summary (PR #88024)

2024-05-08 Thread Teresa Johnson via llvm-branch-commits
teresajohnson wrote: > #87600 is a functional change and the diffbase of this patch, and > `llvm/test/ThinLTO/X86/import_callee_declaration.ll` should be a test case > for both patches. > > In the [diffbase](https://github.com/llvm/llvm-project/pull/87600), bitcode > writer takes maps as addi

[llvm-branch-commits] [llvm] [ThinLTO] Generate import status in per-module combined summary (PR #88024)

2024-05-08 Thread Teresa Johnson via llvm-branch-commits
@@ -1670,11 +1798,15 @@ Expected FunctionImporter::importFunctions( if (!GV.hasName()) continue; auto GUID = GV.getGUID(); - auto Import = ImportGUIDs.count(GUID); - LLVM_DEBUG(dbgs() << (Import ? "Is" : "Not") << " importing global " -

[llvm-branch-commits] [llvm] [ThinLTO] Generate import status in per-module combined summary (PR #88024)

2024-05-08 Thread Teresa Johnson via llvm-branch-commits
@@ -245,8 +256,10 @@ static auto qualifyCalleeCandidates( } /// Given a list of possible callee implementation for a call site, select one -/// that fits the \p Threshold. If none are found, the Reason will give the last -/// reason for the failure (last, in the order of Call

[llvm-branch-commits] [llvm] [ThinLTO] Generate import status in per-module combined summary (PR #88024)

2024-05-08 Thread Teresa Johnson via llvm-branch-commits
https://github.com/teresajohnson commented: I only had time for a cursory review, some comments / suggestions below. I also have a suggestion for the testing issue wrt to the other patch, will note that separately https://github.com/llvm/llvm-project/pull/88024

[llvm-branch-commits] [llvm] [ThinLTO] Generate import status in per-module combined summary (PR #88024)

2024-05-08 Thread Teresa Johnson via llvm-branch-commits
@@ -1634,17 +1752,27 @@ Expected FunctionImporter::importFunctions( return std::move(Err); auto &ImportGUIDs = FunctionsToImportPerModule->second; + // Find the globals to import SetVector GlobalsToImport; for (Function &F : *SrcModule) { if (!F

[llvm-branch-commits] [llvm] [ThinLTO] Generate import status in per-module combined summary (PR #88024)

2024-05-08 Thread Teresa Johnson via llvm-branch-commits
@@ -1634,17 +1752,27 @@ Expected FunctionImporter::importFunctions( return std::move(Err); auto &ImportGUIDs = FunctionsToImportPerModule->second; + // Find the globals to import SetVector GlobalsToImport; for (Function &F : *SrcModule) { if (!F

[llvm-branch-commits] [llvm] [ThinLTO] Generate import status in per-module combined summary (PR #88024)

2024-05-08 Thread Teresa Johnson via llvm-branch-commits
@@ -158,7 +158,7 @@ void llvm::computeLTOCacheKey( std::vector ExportsGUID; ExportsGUID.reserve(ExportList.size()); - for (const auto &VI : ExportList) { + for (const auto &[VI, UnusedImportType] : ExportList) { teresajohnson wrote: We should probably i

[llvm-branch-commits] [llvm] [ThinLTO] Generate import status in per-module combined summary (PR #88024)

2024-05-08 Thread Teresa Johnson via llvm-branch-commits
https://github.com/teresajohnson edited https://github.com/llvm/llvm-project/pull/88024 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [llvm] [ThinLTO] Generate import status in per-module combined summary (PR #88024)

2024-05-08 Thread Teresa Johnson via llvm-branch-commits
@@ -1670,11 +1798,15 @@ Expected FunctionImporter::importFunctions( if (!GV.hasName()) continue; auto GUID = GV.getGUID(); - auto Import = ImportGUIDs.count(GUID); - LLVM_DEBUG(dbgs() << (Import ? "Is" : "Not") << " importing global " -

[llvm-branch-commits] [clang] release/18.x: [clang][fat-lto-objects] Make module flags match non-FatLTO pipelines (#83159) (PR #84290)

2024-03-07 Thread Teresa Johnson via llvm-branch-commits
https://github.com/teresajohnson approved this pull request. https://github.com/llvm/llvm-project/pull/84290 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [llvm] [nfc][InstrProfiling]For comdat setting helper function, move comment closer to the code (PR #83757)

2024-03-04 Thread Teresa Johnson via llvm-branch-commits
https://github.com/teresajohnson approved this pull request. https://github.com/llvm/llvm-project/pull/83757 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [llvm] [InstrProf] Add vtables with type metadata into symtab to look it up with GUID (PR #81051)

2024-02-13 Thread Teresa Johnson via llvm-branch-commits
@@ -479,15 +479,37 @@ Error InstrProfSymtab::create(Module &M, bool InLTO) { continue; Types.clear(); G.getMetadata(LLVMContext::MD_type, Types); -if (!Types.empty()) { - MD5VTableMap.emplace_back(G.getGUID(), &G); -} +if (Types.empty()) + co

[llvm-branch-commits] [llvm] [NFC][CallPromotionUtils]Extract a helper function versionCallSiteWithCond from versionCallSite (PR #81181)

2024-02-12 Thread Teresa Johnson via llvm-branch-commits
https://github.com/teresajohnson edited https://github.com/llvm/llvm-project/pull/81181 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [llvm] [NFC][CallPromotionUtils]Extract a helper function versionCallSiteWithCond from versionCallSite (PR #81181)

2024-02-12 Thread Teresa Johnson via llvm-branch-commits
https://github.com/teresajohnson approved this pull request. lgtm with a suggested change to the comments https://github.com/llvm/llvm-project/pull/81181 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi

[llvm-branch-commits] [llvm] [NFC][CallPromotionUtils]Extract a helper function versionCallSiteWithCond from versionCallSite (PR #81181)

2024-02-12 Thread Teresa Johnson via llvm-branch-commits
@@ -267,7 +264,6 @@ static void createRetBitCast(CallBase &CB, Type *RetTy, CastInst **RetBitCast) { /// Is replaced by the following: /// /// cond_bb: -/// %cond = icmp eq i32 ()* %ptr, @func teresajohnson wrote: I'm not sure these conditions should be

[llvm-branch-commits] [llvm] [InstrProf] Add vtables with type metadata into symtab to look it up with GUID (PR #81051)

2024-02-12 Thread Teresa Johnson via llvm-branch-commits
teresajohnson wrote: Can you pull out the part that does the refactoring into getCanonicalName and adds comments etc into a separate nfc patch, so that this one is just about adding vtables? https://github.com/llvm/llvm-project/pull/81051 ___ llvm-br

[llvm-branch-commits] [llvm] [InstrProf] Add vtables with type metadata into symtab to look it up with GUID (PR #81051)

2024-02-08 Thread Teresa Johnson via llvm-branch-commits
teresajohnson wrote: > Whoops! Sorry! Please don't review this. > > Something goes wrong with my fixup. Let me know when it is ready for review. https://github.com/llvm/llvm-project/pull/81051 ___ llvm-branch-commits mailing list llvm-branch-commits@

[llvm-branch-commits] [llvm] [NFC] (PR #80762)

2024-02-07 Thread Teresa Johnson via llvm-branch-commits
https://github.com/teresajohnson approved this pull request. https://github.com/llvm/llvm-project/pull/80762 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [NFC]Extract the heuristic to find vtable for an indirect call into a helper function (PR #81024)

2024-02-07 Thread Teresa Johnson via llvm-branch-commits
https://github.com/teresajohnson approved this pull request. https://github.com/llvm/llvm-project/pull/81024 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [NFC][IndirectCallProm] Refactor function-based conditional devirtualization and indirect call value profile update into one helper function (PR #80762)

2024-02-07 Thread Teresa Johnson via llvm-branch-commits
@@ -287,7 +290,18 @@ uint32_t IndirectCallPromoter::tryToPromote( NumOfPGOICallPromotion++; NumPromoted++; } - return NumPromoted; + + const bool Changed = (NumPromoted != 0); teresajohnson wrote: Just return false early if NumPromoted is 0 (then C

[llvm-branch-commits] [NFC][IndirectCallProm] Refactor function-based conditional devirtualization and indirect call value profile update into one helper function (PR #80762)

2024-02-07 Thread Teresa Johnson via llvm-branch-commits
@@ -1260,6 +1260,8 @@ void annotateValueSite(Module &M, Instruction &Inst, ArrayRef VDs, uint64_t Sum, InstrProfValueKind ValueKind, uint32_t MaxMDCount) { + if (VDs.empty()) teresajohnson wr

[llvm-branch-commits] [NFC][IndirectCallProm] Refactor function-based conditional devirtualization and indirect call value profile update into one helper function (PR #80762)

2024-02-07 Thread Teresa Johnson via llvm-branch-commits
@@ -1260,6 +1260,8 @@ void annotateValueSite(Module &M, Instruction &Inst, ArrayRef VDs, uint64_t Sum, InstrProfValueKind ValueKind, uint32_t MaxMDCount) { + if (VDs.empty()) teresajohnson wr

[llvm-branch-commits] [clang] PR for llvm/llvm-project#79511 (PR #79513)

2024-01-25 Thread Teresa Johnson via llvm-branch-commits
https://github.com/teresajohnson approved this pull request. sure seems fine https://github.com/llvm/llvm-project/pull/79513 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-br

[llvm-branch-commits] [llvm] [compiler-rt] [ThinLTO][TypeProf] Implement vtable def import (PR #79381)

2024-01-25 Thread Teresa Johnson via llvm-branch-commits
https://github.com/teresajohnson approved this pull request. lgtm with 2 minor comment nits https://github.com/llvm/llvm-project/pull/79381 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/l

[llvm-branch-commits] [llvm] [compiler-rt] [ThinLTO][TypeProf] Implement vtable def import (PR #79381)

2024-01-25 Thread Teresa Johnson via llvm-branch-commits
https://github.com/teresajohnson edited https://github.com/llvm/llvm-project/pull/79381 ___ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [llvm] [compiler-rt] [ThinLTO][TypeProf] Implement vtable def import (PR #79381)

2024-01-25 Thread Teresa Johnson via llvm-branch-commits
@@ -129,15 +131,11 @@ static bool findRefEdges(ModuleSummaryIndex &Index, const User *CurUser, if (I) { uint32_t ActualNumValueData = 0; uint64_t TotalCount = 0; -// 24 is the maximum number of values preserved for one instrumented site, -// defined by INSTR_

[llvm-branch-commits] [llvm] [compiler-rt] [ThinLTO][TypeProf] Implement vtable def import (PR #79381)

2024-01-25 Thread Teresa Johnson via llvm-branch-commits
@@ -124,6 +126,24 @@ static bool findRefEdges(ModuleSummaryIndex &Index, const User *CurUser, Worklist.push_back(Operand); } } + + const Instruction *I = dyn_cast(CurUser); + if (I) { +uint32_t ActualNumValueData = 0; +uint64_t TotalCount = 0; +// M

[llvm-branch-commits] [llvm] [compiler-rt] [ThinLTO][TypeProf] Implement vtable def import (PR #79381)

2024-01-25 Thread Teresa Johnson via llvm-branch-commits
@@ -124,6 +124,28 @@ static bool findRefEdges(ModuleSummaryIndex &Index, const User *CurUser, Worklist.push_back(Operand); } } + + const Instruction *I = dyn_cast(CurUser); + if (I) { +uint32_t ActualNumValueData = 0; +uint64_t TotalCount = 0; +// 2

[llvm-branch-commits] [lld] 5b42fd8 - [LTO] Test format fix (NFC)

2021-01-14 Thread Teresa Johnson via llvm-branch-commits
Author: Teresa Johnson Date: 2021-01-14T14:09:50-08:00 New Revision: 5b42fd8dd4e7e29125a09a41a33af7c9cb57d144 URL: https://github.com/llvm/llvm-project/commit/5b42fd8dd4e7e29125a09a41a33af7c9cb57d144 DIFF: https://github.com/llvm/llvm-project/commit/5b42fd8dd4e7e29125a09a41a33af7c9cb57d144.diff

[llvm-branch-commits] [compiler-rt] d7e71b5 - [compiler-rt santizer] Use clock_gettime instead of timespec_get

2020-12-08 Thread Teresa Johnson via llvm-branch-commits
Author: Jeroen Dobbelaere Date: 2020-12-08T10:10:17-08:00 New Revision: d7e71b5db8427309ad12249633ea86cccdc5a701 URL: https://github.com/llvm/llvm-project/commit/d7e71b5db8427309ad12249633ea86cccdc5a701 DIFF: https://github.com/llvm/llvm-project/commit/d7e71b5db8427309ad12249633ea86cccdc5a701.d

[llvm-branch-commits] [llvm] 77b5097 - [ICP] Don't promote when target not defined in module

2020-12-08 Thread Teresa Johnson via llvm-branch-commits
Author: Teresa Johnson Date: 2020-12-08T07:45:36-08:00 New Revision: 77b509710ce7e6aec9ab460bc22a34f44fa94ab3 URL: https://github.com/llvm/llvm-project/commit/77b509710ce7e6aec9ab460bc22a34f44fa94ab3 DIFF: https://github.com/llvm/llvm-project/commit/77b509710ce7e6aec9ab460bc22a34f44fa94ab3.diff

[llvm-branch-commits] [lld] 07f234b - [lld] Add --no-lto-whole-program-visibility

2020-11-24 Thread Teresa Johnson via llvm-branch-commits
Author: Teresa Johnson Date: 2020-11-24T16:46:08-08:00 New Revision: 07f234be1ccbce131704f580aa3f117083a887f7 URL: https://github.com/llvm/llvm-project/commit/07f234be1ccbce131704f580aa3f117083a887f7 DIFF: https://github.com/llvm/llvm-project/commit/07f234be1ccbce131704f580aa3f117083a887f7.diff

[llvm-branch-commits] [lld] d3f1f58 - [Docs] Add/update release notes for D71913 (LTO WPD changes)

2020-09-15 Thread Teresa Johnson via llvm-branch-commits
Author: Teresa Johnson Date: 2020-09-15T08:51:56-07:00 New Revision: d3f1f588f902a968f102d6cdaf052674efc257aa URL: https://github.com/llvm/llvm-project/commit/d3f1f588f902a968f102d6cdaf052674efc257aa DIFF: https://github.com/llvm/llvm-project/commit/d3f1f588f902a968f102d6cdaf052674efc257aa.diff

[llvm-branch-commits] [llvm-branch] r277628 - Add ThinLTO release note.

2016-08-11 Thread Teresa Johnson via llvm-branch-commits
Author: tejohnson Date: Wed Aug 3 13:52:04 2016 New Revision: 277628 URL: http://llvm.org/viewvc/llvm-project?rev=277628&view=rev Log: Add ThinLTO release note. Modified: llvm/branches/release_39/docs/ReleaseNotes.rst Modified: llvm/branches/release_39/docs/ReleaseNotes.rst URL: http://llv