[all-commits] [llvm/llvm-project] bf6ff4: [MemProf] Context disambiguation cloning pass [pat...
Teresa Johnson via All-commits
all-commits at lists.llvm.org
Wed May 3 13:43:34 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: bf6ff4fd4b735afffc65f92a4a79f6610e7174c3
https://github.com/llvm/llvm-project/commit/bf6ff4fd4b735afffc65f92a4a79f6610e7174c3
Author: Teresa Johnson <tejohnson at google.com>
Date: 2023-05-03 (Wed, 03 May 2023)
Changed paths:
M llvm/include/llvm/Transforms/IPO/MemProfContextDisambiguation.h
M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
M llvm/test/ThinLTO/X86/memprof-basic.ll
M llvm/test/ThinLTO/X86/memprof-duplicate-context-ids.ll
A llvm/test/ThinLTO/X86/memprof-funcassigncloning.ll
M llvm/test/ThinLTO/X86/memprof-indirectcall.ll
M llvm/test/ThinLTO/X86/memprof-inlined.ll
M llvm/test/Transforms/MemProfContextDisambiguation/basic.ll
M llvm/test/Transforms/MemProfContextDisambiguation/duplicate-context-ids.ll
A llvm/test/Transforms/MemProfContextDisambiguation/funcassigncloning.ll
M llvm/test/Transforms/MemProfContextDisambiguation/indirectcall.ll
M llvm/test/Transforms/MemProfContextDisambiguation/inlined.ll
Log Message:
-----------
[MemProf] Context disambiguation cloning pass [patch 3/4]
Applies cloning decisions to the IR, cloning functions and updating
calls. For Regular LTO, the IR is updated directly during function
assignment, whereas for ThinLTO it is recorded in the summary index
(a subsequent patch will apply to the IR via the index during the
ThinLTO backend.
The function assignment and cloning proceeds greedily, and we create new
clones as needed when we find an incompatible assignment of function
clones to callsite clones (i.e. when different callers need to invoke
different combinations of callsite clones).
Depends on D140949.
Differential Revision: https://reviews.llvm.org/D141077
More information about the All-commits
mailing list