brintos

brintos / llvm-project-archived public Read only

0
0
Text · 598 B · 93dfb0e Raw
20 lines · c
1// RUN: %clang_profgen -o %t -O3 %s2// RUN: env LLVM_PROFILE_FILE=%t.profraw %run %t3// RUN: llvm-profdata merge -o %t.profdata %t.profraw4// RUN: %clang_profuse=%t.profdata -o - -S -emit-llvm %s | FileCheck %s5 6void __llvm_profile_reset_counters(void);7void foo(int);8int main(void) {9  foo(0);10  __llvm_profile_reset_counters();11  foo(1);12  return 0;13}14void foo(int N) {15  // CHECK-LABEL: define{{( dso_local)?}}{{( arm_aapcs_vfpcc)?}} void @foo(16  // CHECK: br i1 %{{.*}}, label %{{.*}}, label %{{.*}}, !prof ![[FOO:[0-9]+]]17  if (N) {}18}19// CHECK: ![[FOO]] = !{!"branch_weights", i32 2, i32 1}20