xref: /llvm-project/llvm/test/tools/llvm-profdata/misaligned-binary-ids-size.test (revision 922a431e10fa28519eb5d62e094f19b1008612a1)
1// gnuwin32 printf does not work for this test because it will print \15 (CR)
2// whenever \12 (LF) is in the input string.
3UNSUPPORTED: system-windows
4RUN: printf '\201rforpl\377' > %t.profraw
5RUN: printf '\12\0\0\0\0\0\0\0' >> %t.profraw
6// We should fail on this because the binary IDs is not a multiple of 8 bytes.
7RUN: printf '\77\0\0\0\0\0\0\0' >> %t.profraw
8RUN: printf '\0\0\0\0\0\0\0\0' >> %t.profraw
9RUN: printf '\0\0\0\0\0\0\0\0' >> %t.profraw
10RUN: printf '\0\0\0\0\0\0\0\0' >> %t.profraw
11RUN: printf '\0\0\0\0\0\0\0\0' >> %t.profraw
12RUN: printf '\0\0\0\0\0\0\0\0' >> %t.profraw
13RUN: printf '\0\0\0\0\0\0\0\0' >> %t.profraw
14RUN: printf '\0\0\0\0\0\0\0\0' >> %t.profraw
15RUN: printf '\0\0\0\0\0\0\0\0' >> %t.profraw
16RUN: printf '\0\0\0\0\0\0\0\0' >> %t.profraw
17RUN: printf '\0\0\0\0\0\0\0\0' >> %t.profraw
18
19// Binary IDs - There are only two in this case that are 20 bytes.
20RUN: printf '\24\0\0\0\0\0\0\0' >> %t.profraw
21RUN: printf '\0\1\2\3\4\5\6\7' >> %t.profraw
22RUN: printf '\0\1\2\3\4\5\6\7' >> %t.profraw
23RUN: printf '\0\1\2\3\0\0\0\0' >> %t.profraw
24RUN: printf '\24\0\0\0\0\0\0\0' >> %t.profraw
25RUN: printf '\1\1\1\1\1\1\1\1' >> %t.profraw
26RUN: printf '\2\2\2\2\2\2\2\2' >> %t.profraw
27RUN: printf '\3\3\3\3\0\0\0\0' >> %t.profraw
28
29// RUN: not llvm-profdata show --binary-ids  %t.profraw 2>&1 | FileCheck %s
30// CHECK: invalid instrumentation profile data (file header is corrupt)
31