diff options
author | Teresa Johnson <tejohnson@google.com> | 2025-07-27 15:55:22 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-07-27 15:55:22 -0700 |
commit | 314e22bcab2b0f3d208708431a14215058f0718f (patch) | |
tree | 92ae19a9b45fb1e4afa62e80b212766d185a1c08 /llvm/test | |
parent | bca80a00e7379d043af5020f595dab99f8290bd6 (diff) | |
download | llvm-314e22bcab2b0f3d208708431a14215058f0718f.zip llvm-314e22bcab2b0f3d208708431a14215058f0718f.tar.gz llvm-314e22bcab2b0f3d208708431a14215058f0718f.tar.bz2 |
Revert "[MemProf] Ensure all callsite clones are assigned a function clone" (#150856)
Reverts llvm/llvm-project#150735 due to bot failures that I need to
investigate
Diffstat (limited to 'llvm/test')
-rw-r--r-- | llvm/test/ThinLTO/X86/memprof_func_assign_fix.ll | 145 | ||||
-rw-r--r-- | llvm/test/Transforms/MemProfContextDisambiguation/func_assign_fix.ll | 130 |
2 files changed, 0 insertions, 275 deletions
diff --git a/llvm/test/ThinLTO/X86/memprof_func_assign_fix.ll b/llvm/test/ThinLTO/X86/memprof_func_assign_fix.ll deleted file mode 100644 index bd35850..0000000 --- a/llvm/test/ThinLTO/X86/memprof_func_assign_fix.ll +++ /dev/null @@ -1,145 +0,0 @@ -;; Make sure we assign the original callsite to a function clone (which will be -;; the original function clone), even when we cannot update its caller (due to -;; missing metadata e.g. from mismatched profiles). Otherwise we will try to use -;; the original function for a different clone, leading to confusion later when -;; rewriting the calls. - -;; -stats requires asserts -; REQUIRES: asserts - -; RUN: opt -thinlto-bc %s >%t.o -; RUN: llvm-lto2 run %t.o -enable-memprof-context-disambiguation \ -; RUN: -supports-hot-cold-new \ -; RUN: -r=%t.o,A,plx \ -; RUN: -r=%t.o,B,plx \ -; RUN: -r=%t.o,C,plx \ -; RUN: -r=%t.o,D,plx \ -; RUN: -r=%t.o,E,plx \ -; RUN: -r=%t.o,F,plx \ -; RUN: -r=%t.o,G,plx \ -; RUN: -r=%t.o,A1,plx \ -; RUN: -r=%t.o,B1,plx \ -; RUN: -r=%t.o,_Znwm, \ -; RUN: -memprof-verify-ccg -memprof-verify-nodes -debug-only=memprof-context-disambiguation \ -; RUN: -stats -pass-remarks=memprof-context-disambiguation -save-temps \ -; RUN: -o %t.out 2>&1 | FileCheck %s \ -; RUN: --implicit-check-not="Mismatch in call clone assignment" \ -; RUN: --implicit-check-not="Number of callsites assigned to call multiple non-matching clones" - -; RUN: llvm-dis %t.out.1.4.opt.bc -o - | FileCheck %s --check-prefix=IR - -; ModuleID = '<stdin>' -source_filename = "reduced.ll" -target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128" -target triple = "x86_64-grtev4-linux-gnu" - -; IR-LABEL: define dso_local void @A() -define void @A() #0 { - ; IR: call void @C() - call void @C() - ret void -} - -; IR-LABEL: define dso_local void @B() -define void @B() #0 { - ; IR: call void @C.memprof.1() - call void @C(), !callsite !1 - ret void -} - -; IR-LABEL: define dso_local void @C() -define void @C() #0 { - ; IR: call void @F() - call void @F(), !callsite !16 - ; IR: call void @D() - call void @D(), !callsite !2 - ret void -} - -; IR-LABEL: define dso_local void @D() -define void @D() #0 { - ; IR: call void @E() - call void @E(), !callsite !3 - ; IR: call void @G() - call void @G(), !callsite !17 - ret void -} - -; IR-LABEL: define dso_local void @E() -define void @E() #0 { - ; IR: call ptr @_Znwm(i64 0) #[[NOTCOLD:[0-9]+]] - %1 = call ptr @_Znwm(i64 0), !memprof !4, !callsite !9 - ret void -} - -; IR-LABEL: define dso_local void @F() -define void @F() #0 { - ; IR: call void @G() - call void @G(), !callsite !17 - ret void -} - -; IR-LABEL: define dso_local void @G() -define void @G() #0 { - ; IR: call ptr @_Znwm(i64 0) #[[NOTCOLD]] - %2 = call ptr @_Znwm(i64 0), !memprof !10, !callsite !15 - ret void -} - -; IR-LABEL: define dso_local void @A1() -define void @A1() #0 { - ; IR: call void @C() - call void @C(), !callsite !18 - ret void -} - -; IR-LABEL: define dso_local void @B1() -define void @B1() #0 { - ; IR: call void @C.memprof.1() - call void @C(), !callsite !19 - ret void -} - -; IR-LABEL: define dso_local void @C.memprof.1() - ; IR: call void @F.memprof.1() - ; IR: call void @D.memprof.1() - -; IR-LABEL: define dso_local void @D.memprof.1() - ; IR: call void @E.memprof.1() - ; IR: call void @G() - -; IR-LABEL: define dso_local void @E.memprof.1() - ; IR: call ptr @_Znwm(i64 0) #[[COLD:[0-9]+]] - -; IR-LABEL: define dso_local void @F.memprof.1() - ; IR: call void @G.memprof.1() - -; IR-LABEL: define dso_local void @G.memprof.1() - ; IR: call ptr @_Znwm(i64 0) #[[COLD]] - -declare ptr @_Znwm(i64) - -attributes #0 = { noinline optnone } -; IR: attributes #[[NOTCOLD]] = { "memprof"="notcold" } -; IR: attributes #[[COLD]] = { "memprof"="cold" } - -!0 = !{i64 123} -!1 = !{i64 234} -!2 = !{i64 345} -!3 = !{i64 456} -!4 = !{!5, !7} -!5 = !{!6, !"notcold"} -!6 = !{i64 567, i64 456, i64 345, i64 123} -!7 = !{!8, !"cold"} -!8 = !{i64 567, i64 456, i64 345, i64 234} -!9 = !{i64 567} -!10 = !{!11, !13} -!11 = !{!12, !"notcold"} -!12 = !{i64 678, i64 891, i64 789, i64 912} -!13 = !{!14, !"cold"} -!14 = !{i64 678, i64 891, i64 789, i64 812} -!15 = !{i64 678} -!16 = !{i64 789} -!17 = !{i64 891} -!18 = !{i64 912} -!19 = !{i64 812} diff --git a/llvm/test/Transforms/MemProfContextDisambiguation/func_assign_fix.ll b/llvm/test/Transforms/MemProfContextDisambiguation/func_assign_fix.ll deleted file mode 100644 index 29c58c9..0000000 --- a/llvm/test/Transforms/MemProfContextDisambiguation/func_assign_fix.ll +++ /dev/null @@ -1,130 +0,0 @@ -;; Make sure we assign the original callsite to a function clone (which will be -;; the original function clone), even when we cannot update its caller (due to -;; missing metadata e.g. from mismatched profiles). Otherwise we will try to use -;; the original function for a different clone, leading to confusion later when -;; rewriting the calls. - -;; -stats requires asserts -; REQUIRES: asserts - -; RUN: opt -passes=memprof-context-disambiguation -supports-hot-cold-new \ -; RUN: -memprof-verify-ccg -memprof-verify-nodes -stats -debug \ -; RUN: -pass-remarks=memprof-context-disambiguation %s -S 2>&1 | \ -; RUN: FileCheck %s --implicit-check-not="Mismatch in call clone assignment" \ -; RUN: --implicit-check-not="Number of callsites assigned to call multiple non-matching clones" - - -; ModuleID = '<stdin>' -source_filename = "reduced.ll" -target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128" -target triple = "x86_64-grtev4-linux-gnu" - -; CHECK-LABEL: define void @A() -define void @A() { - ; CHECK: call void @C() - call void @C() - ret void -} - -; CHECK-LABEL: define void @B() -define void @B() { - ; CHECK: call void @C.memprof.1() - call void @C(), !callsite !1 - ret void -} - -; CHECK-LABEL: define void @C() -define void @C() { - ; CHECK: call void @F() - call void @F(), !callsite !16 - ; CHECK: call void @D() - call void @D(), !callsite !2 - ret void -} - -; CHECK-LABEL: define void @D() -define void @D() { - ; CHECK: call void @E() - call void @E(), !callsite !3 - ; CHECK: call void @G() - call void @G(), !callsite !17 - ret void -} - -; CHECK-LABEL: define void @E() -define void @E() { - ; CHECK: call ptr @_Znwm(i64 0) #[[NOTCOLD:[0-9]+]] - %1 = call ptr @_Znwm(i64 0), !memprof !4, !callsite !9 - ret void -} - -; CHECK-LABEL: define void @F() -define void @F() { - ; CHECK: call void @G() - call void @G(), !callsite !17 - ret void -} - -; CHECK-LABEL: define void @G() -define void @G() { - ; CHECK: call ptr @_Znwm(i64 0) #[[NOTCOLD]] - %2 = call ptr @_Znwm(i64 0), !memprof !10, !callsite !15 - ret void -} - -; CHECK-LABEL: define void @A1() -define void @A1() { - ; CHECK: call void @C() - call void @C(), !callsite !18 - ret void -} - -; CHECK-LABEL: define void @B1() -define void @B1() { - ; CHECK: call void @C.memprof.1() - call void @C(), !callsite !19 - ret void -} - -; CHECK-LABEL: define void @C.memprof.1() - ; CHECK: call void @F.memprof.1() - ; CHECK: call void @D.memprof.1() - -; CHECK-LABEL: define void @D.memprof.1() - ; CHECK: call void @E.memprof.1() - ; CHECK: call void @G() - -; CHECK-LABEL: define void @E.memprof.1() - ; CHECK: call ptr @_Znwm(i64 0) #[[COLD:[0-9]+]] - -; CHECK-LABEL: define void @F.memprof.1() - ; CHECK: call void @G.memprof.1() - -; CHECK-LABEL: define void @G.memprof.1() - ; CHECK: call ptr @_Znwm(i64 0) #[[COLD]] - -declare ptr @_Znwm(i64) - -; IR: attributes #[[NOTCOLD]] = { "memprof"="notcold" } -; IR: attributes #[[COLD]] = { "memprof"="cold" } - -!0 = !{i64 123} -!1 = !{i64 234} -!2 = !{i64 345} -!3 = !{i64 456} -!4 = !{!5, !7} -!5 = !{!6, !"notcold"} -!6 = !{i64 567, i64 456, i64 345, i64 123} -!7 = !{!8, !"cold"} -!8 = !{i64 567, i64 456, i64 345, i64 234} -!9 = !{i64 567} -!10 = !{!11, !13} -!11 = !{!12, !"notcold"} -!12 = !{i64 678, i64 891, i64 789, i64 912} -!13 = !{!14, !"cold"} -!14 = !{i64 678, i64 891, i64 789, i64 812} -!15 = !{i64 678} -!16 = !{i64 789} -!17 = !{i64 891} -!18 = !{i64 912} -!19 = !{i64 812} |