xref: /aosp_15_r20/external/compiler-rt/test/profile/gcc-flag-compatibility.test (revision 7c3d14c8b49c529e04be81a3ce6f5cc23712e4c6)
1*7c3d14c8STreehugger RobotRUN: rm -rf %t.d
2*7c3d14c8STreehugger RobotRUN: mkdir -p %t.d
3*7c3d14c8STreehugger RobotRUN: %clang_profgen_gcc=%t.d/d1/d2 -o %t.d/code %S/Inputs/gcc-flag-compatibility.c
4*7c3d14c8STreehugger Robot
5*7c3d14c8STreehugger Robot# Test that the instrumented code writes to %t.d/d1/d2/default.profraw
6*7c3d14c8STreehugger RobotRUN: %run %t.d/code
7*7c3d14c8STreehugger RobotRUN: llvm-profdata merge -o %t.profdata %t.d/d1/d2/default.profraw
8*7c3d14c8STreehugger Robot
9*7c3d14c8STreehugger Robot# Test that we can override the directory and file name with LLVM_PROFILE_FILE.
10*7c3d14c8STreehugger RobotRUN: env LLVM_PROFILE_FILE=%t.d/x1/prof.raw %run %t.d/code
11*7c3d14c8STreehugger RobotRUN: llvm-profdata merge -o %t.profdata %t.d/x1/prof.raw
12*7c3d14c8STreehugger Robot
13*7c3d14c8STreehugger Robot# Test that we can specify a directory with -fprofile-use.
14*7c3d14c8STreehugger RobotRUN: llvm-profdata merge -o %t.d/default.profdata %t.d/x1/prof.raw
15*7c3d14c8STreehugger RobotRUN: %clang_profuse_gcc=%t.d -o %t.d/code %S/Inputs/gcc-flag-compatibility.c
16*7c3d14c8STreehugger Robot
17*7c3d14c8STreehugger Robot# Test that we can specify a file with -fprofile-use.
18*7c3d14c8STreehugger RobotRUN: %clang_profuse_gcc=%t.profdata -o %t.d/code %S/Inputs/gcc-flag-compatibility.c
19