1# Compatibility tests for older profile format versions. These ensure
2# that we don't break compatibility with an older profile version
3# without noticing it.
4
5# The input file at %S/Inputs/compat.profdata.v1 was generated with
6# llvm-profdata merge from r214548.
7
8# RUN: llvm-profdata show %S/Inputs/compat.profdata.v1 --function function_count_only --counts | FileCheck %s -check-prefix=FUNC_COUNT_ONLY
9function_count_only
100
111
1297531
13# FUNC_COUNT_ONLY:      Hash: 0x{{0+$}}
14# FUNC_COUNT_ONLY-NEXT: Counters: 1
15# FUNC_COUNT_ONLY-NEXT: Function count: 97531
16# FUNC_COUNT_ONLY-NEXT: Block counts: []
17
18# RUN: llvm-profdata show %S/Inputs/compat.profdata.v1 --function "name with spaces" --counts | FileCheck %s -check-prefix=SPACES
19name with spaces
201024
212
220
230
24# SPACES:      Hash: 0x{{0+}}400
25# SPACES-NEXT: Counters: 2
26# SPACES-NEXT: Function count: 0
27# SPACES-NEXT: Block counts: [0]
28
29# RUN: llvm-profdata show %S/Inputs/compat.profdata.v1 --function large_numbers --counts | FileCheck %s -check-prefix=LARGENUM
30large_numbers
314611686018427387903
326
332305843009213693952
341152921504606846976
35576460752303423488
36288230376151711744
37144115188075855872
3872057594037927936
39# LARGENUM:      Hash: 0x3fffffffffffffff
40# LARGENUM-NEXT: Counters: 6
41# LARGENUM-NEXT: Function count: 2305843009213693952
42# LARGENUM-NEXT: Block counts: [1152921504606846976, 576460752303423488, 288230376151711744, 144115188075855872, 72057594037927936]
43
44# RUN: llvm-profdata show %S/Inputs/compat.profdata.v1 | FileCheck %s -check-prefix=SUMMARY
45# SUMMARY: Total functions: 3
46# SUMMARY: Maximum function count: 2305843009213693952
47# SUMMARY: Maximum internal block count: 1152921504606846976
48