================
@@ -0,0 +1,33 @@
+// Test llvm-profdata merging with multiple correlation files mixing different 
correlation modes.
+
+// RUN: %clang_pgogen -o %t.normal -mllvm --disable-vp=true 
%S/../Inputs/instrprof-debug-info-correlate-main.cpp 
%S/../Inputs/instrprof-debug-info-correlate-foo.cpp
+// RUN: env LLVM_PROFILE_FILE=%t.profraw %run %t.normal
+// RUN: llvm-profdata merge -o %t.normal.profdata %t.profraw
+
+// Compiling with different configs.
+// RUN: %clang_pgogen -o %t -mllvm --disable-vp=true 
%S/../Inputs/instrprof-debug-info-correlate-main.cpp -c -o %t-main.o
+// RUN: %clang_pgogen -o %t -g -mllvm -profile-correlate=debug-info -mllvm 
--disable-vp=true %S/../Inputs/instrprof-debug-info-correlate-main.cpp -c -o 
%t-main.debug.o
+// RUN: %clang_pgogen -o %t -mllvm -profile-correlate=binary -mllvm 
--disable-vp=true %S/../Inputs/instrprof-debug-info-correlate-foo.cpp -c -o 
%t-foo.binary.o
+// RUN: %clang_pgogen -o %t -g -mllvm -profile-correlate=debug-info -mllvm 
--disable-vp=true %S/../Inputs/instrprof-debug-info-correlate-foo.cpp -fpic 
-shared -Wl,--build-id -o %t-libfoo.debug.so
+// RUN: %clang_pgogen -o %t -mllvm -profile-correlate=binary -mllvm 
--disable-vp=true %S/../Inputs/instrprof-debug-info-correlate-foo.cpp -fpic 
-shared -Wl,--build-id -o %t-libfoo.binary.so
+
+// Test mixing default raw profile and lightweight raw profile generated with 
debug info correlate.
+// The raw profiles are mixed in %t.proflite.
+// RUN: %clang_pgogen -o %t %t-main.o %t-libfoo.debug.so -Wl,--build-id -o %t
+// RUN: env LLVM_PROFILE_FILE=%t.proflite %run %t
+// RUN: llvm-profdata merge -o %t.profdata --debug-info=%t-libfoo.debug.so 
%t.proflite
+// RUN: diff <(llvm-profdata show --all-functions --counts %t.normal.profdata) 
<(llvm-profdata show --all-functions --counts %t.profdata)
----------------
zmodem wrote:

I wonder if we can use this `<(...)` syntax in lit tests. Maybe it's Bash 
specific?
Oh, I see it was already used in instrprof-debug-info-correlate.c so maybe it's 
fine..

https://github.com/llvm/llvm-project/pull/75957
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to