[clang][modules] Don't prevent translation of FW_Private includes when explicitly...
[llvm-project.git] / llvm / test / tools / llvm-profgen / inline-probe-afdo.test
blob763bf3b0f8c394a3abd69f7d242eefaeaa69589e
1 ; RUN: llvm-profgen --format=text --use-dwarf-correlation --ignore-stack-samples --perfscript=%S/Inputs/cs-preinline-cost.perfscript --binary=%S/Inputs/cs-preinline-cost.perfbin --output %t
2 ; RUN: FileCheck %s --input-file %t
4 ; CHECK:     main:947937:0
5 ; CHECK-NEXT:  2: 545
6 ; CHECK-NEXT:  3: 545
7 ; CHECK-NEXT:  5: 545
8 ; CHECK-NEXT:  7: 0
9 ; CHECK-NEXT:  65496: 545
10 ; CHECK-NEXT:  3.7: _Z3fooi:915794
11 ; CHECK-NEXT:   1: 545
12 ; CHECK-NEXT:   5: 545
13 ; CHECK-NEXT:   6: 272
14 ; CHECK-NEXT:   10: 273
15 ; CHECK-NEXT:   11: 180
16 ; CHECK-NEXT:   12: 6965
17 ; CHECK-NEXT:   13: 6965
18 ; CHECK-NEXT:   14: 6965
19 ; CHECK-NEXT:   15: 6965
20 ; CHECK-NEXT:   20: 182
21 ; CHECK-NEXT:   21: 6958
22 ; CHECK-NEXT:   22: 6958
23 ; CHECK-NEXT:   23: 6958
24 ; CHECK-NEXT:   24: 6958
25 ; CHECK-NEXT:   29: 272
26 ; CHECK-NEXT:   65529: 182
27 ; CHECK-NEXT:  4.8: _Z3fooi:16338
28 ; CHECK-NEXT:   1: 272
29 ; CHECK-NEXT:   6: 545
34 ; binary is built with the source below using the following command line:
35 ;   clang -O3 -g -fpseudo-probe-for-profiling test.cpp
37 ;#include <stdio.h>
39 ;volatile int state = 9000;
41 ;int foo(int x) {
42 ;    if (x == 0) {
43 ;        return 7;
44 ;    }
46 ;    if ((x & 1) == 0) {
47 ;        state--;
48 ;        return 9;
49 ;    }
51 ;    if (state > 5000) {
52 ;        while (state > 5000) {
53 ;               for (int i = 50; i >= 0; i--) {
54 ;                state *= 6;
55 ;                state /= 7;
56 ;                state -= 1;
57 ;            }
58 ;        }
59 ;    }
60 ;    else {
61 ;        while (state < 5000) {
62 ;            for (int i = 50; i >= 0; i--) {
63 ;                state *= 6;
64 ;                state /= 5;
65 ;                state += 1;
66 ;            }
67 ;        }
68 ;    }
70 ;    return state;
73 ;volatile int cnt = 10000000;//10000000;
74 ;int main() {
75 ;    int r = 0;
76 ;    for (int i = 0; i < cnt; i++) {
77 ;      r += foo(i);
78 ;      r -= foo(i & (~1));
79 ;      r += foo(0);
80 ;    }
81 ;    return r;