;; BB section test with basic block hashes. ;; basic block sections Profile with bb hashes ; RUN: echo 'v1' > %t ; RUN: echo 'f foo' >> %t ; RUN: echo 'g 0:10,1:9,2:1 1:8,3:8 2:2,3:2 3:11' >> %t ; RUN: echo 'c 0 2 3' >> %t ; RUN: echo 'h 0:64863A11B5CA0000 1:54F1E80D6B270006 2:54F1F4E66B270008 3:C8BC6041A2CB0009' >> %t ; RUN: llc < %s -O0 -mtriple=x86_64-pc-linux -function-sections -basic-block-sections=%t | FileCheck %s ; define void @foo(i1 zeroext) nounwind { %2 = alloca i8, align 1 %3 = zext i1 %0 to i8 store i8 %3, ptr %2, align 1 %4 = load i8, ptr %2, align 1 %5 = trunc i8 %4 to i1 br i1 %5, label %6, label %8 6: ; preds = %1 %7 = call i32 @bar() br label %10 8: ; preds = %1 %9 = call i32 @baz() br label %10 10: ; preds = %8, %6 ret void } declare i32 @bar() #1 declare i32 @baz() #1 ; CHECK: .section .text.foo,"ax",@progbits ; CHECK: callq baz ; CHECK: retq ; CHECK: .section .text.split.foo,"ax",@progbits ; CHECK: callq bar