mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 11:13:28 +01:00
5b4570b273
Since the profile can come from 32-bit machines, we need to check the pointer size. Change the magic number to facilitate this. Adds tests for reading 32-bit and 64-bit binaries (both big- and little-endian). The tests write a binary using printf in RUN lines (like raw-magic-but-no-header.test). Assuming the bots don't complain, this seems like a better way forward for testing RawInstrProfReader than committing binary files. <rdar://problem/16400648> llvm-svn: 204557
43 lines
1.2 KiB
Plaintext
43 lines
1.2 KiB
Plaintext
RUN: printf '\201rforpl\377' > %t
|
|
RUN: printf '\1\0\0\0\0\0\0\0' >> %t
|
|
RUN: printf '\2\0\0\0\0\0\0\0' >> %t
|
|
RUN: printf '\3\0\0\0\0\0\0\0' >> %t
|
|
RUN: printf '\6\0\0\0\0\0\0\0' >> %t
|
|
RUN: printf '\0\0\4\0\1\0\0\0' >> %t
|
|
RUN: printf '\0\0\4\0\2\0\0\0' >> %t
|
|
|
|
RUN: printf '\3\0\0\0' >> %t
|
|
RUN: printf '\1\0\0\0' >> %t
|
|
RUN: printf '\1\0\0\0\0\0\0\0' >> %t
|
|
RUN: printf '\0\0\4\0\2\0\0\0' >> %t
|
|
RUN: printf '\0\0\4\0\1\0\0\0' >> %t
|
|
|
|
RUN: printf '\03\0\0\0' >> %t
|
|
RUN: printf '\02\0\0\0' >> %t
|
|
RUN: printf '\02\0\0\0\0\0\0\0' >> %t
|
|
RUN: printf '\03\0\4\0\2\0\0\0' >> %t
|
|
RUN: printf '\10\0\4\0\1\0\0\0' >> %t
|
|
|
|
RUN: printf '\023\0\0\0\0\0\0\0' >> %t
|
|
RUN: printf '\067\0\0\0\0\0\0\0' >> %t
|
|
RUN: printf '\101\0\0\0\0\0\0\0' >> %t
|
|
RUN: printf 'foobar' >> %t
|
|
|
|
RUN: llvm-profdata show %t -all-functions -counts | FileCheck %s
|
|
|
|
CHECK: Counters:
|
|
CHECK: foo:
|
|
CHECK: Hash: 0x0000000000000001
|
|
CHECK: Counters: 1
|
|
CHECK: Function count: 19
|
|
CHECK: Block counts: []
|
|
CHECK: bar:
|
|
CHECK: Hash: 0x0000000000000002
|
|
CHECK: Counters: 2
|
|
CHECK: Function count: 55
|
|
CHECK: Block counts: [65]
|
|
CHECK: Functions shown: 2
|
|
CHECK: Total functions: 2
|
|
CHECK: Maximum function count: 55
|
|
CHECK: Maximum internal block count: 65
|