1# Test random function splitting option 2 3# RUN: llvm-mc --filetype=obj --triple x86_64-unknown-unknown %s -o %t.o 4# RUN: %clang %cflags %t.o -o %t.exe 5# RUN: llvm-bolt %t.exe -o %t.out --split-functions --split-random \ 6# RUN: --print-finalized --print-only=two_block --bolt-seed=7 2>&1 | \ 7# RUN: FileCheck %s 8 9# CHECK: Binary Function "two_block" 10# CHECK: IsSplit : 11# CHECK-SAME: {{ 1$}} 12 13 .text 14 .globl single_block 15 .type single_block, @function 16single_block: 17 ret 18 .size single_block, .-single_block 19 20 21 .globl two_block 22 .type two_block, @function 23two_block: 24.L3: 25 subl $1, %edi 26 testl %edi, %edi 27 jg .L3 28 jmp .L4 29.L4: 30 subl $1, %edi 31 subl $1, %edi 32 subl $1, %edi 33 subl $1, %edi 34 ret 35 .size two_block, .-two_block 36 37 38 .globl main 39 .type main, @function 40main: 41 call single_block 42 movl $10, %edi 43 call two_block 44 ret 45 .size main, .-main 46