brintos

brintos / llvm-project-archived public Read only

0
0
Text · 4.0 KiB · 9a5e5f8 Raw
186 lines · plain
1## Check that BOLT in lite mode processes fragments as expected.2 3# RUN: split-file %s %t4# RUN: llvm-mc -filetype=obj -triple x86_64-unknown-unknown %t/main.s -o %t.o5# RUN: llvm-mc -filetype=obj -triple x86_64-unknown-unknown %t/baz.s -o %t.baz.o6# RUN: llvm-mc -filetype=obj -triple x86_64-unknown-unknown %t/baz2.s -o %t.baz2.o7# RUN: link_fdata %s %t.o %t.main.fdata8# RUN: link_fdata %s %t.baz.o %t.baz.fdata9# RUN: link_fdata %s %t.baz2.o %t.baz2.fdata10# RUN: merge-fdata %t.main.fdata %t.baz.fdata %t.baz2.fdata > %t.fdata11# RUN: %clang %cflags %t.o %t.baz.o %t.baz2.o -o %t.exe -Wl,-q12# RUN: llvm-bolt %t.exe -o %t.out --lite=1 --data %t.fdata -v=1 -print-cfg \13# RUN:   2>&1 | FileCheck %s14 15# CHECK: BOLT-INFO: processing main.cold.1 as a sibling of non-ignored function16# CHECK: BOLT-INFO: processing foo.cold.1/1(*2) as a sibling of non-ignored function17# CHECK: BOLT-INFO: processing bar.cold.1/1(*2) as a sibling of non-ignored function18# CHECK: BOLT-INFO: processing baz.cold.1 as a sibling of non-ignored function19# CHECK: BOLT-INFO: processing baz.cold.1/1(*2) as a sibling of non-ignored function20# CHECK: BOLT-INFO: processing baz.cold.1/2(*2) as a sibling of non-ignored function21 22# CHECK: Binary Function "main.cold.1" after building cfg23# CHECK: Parent : main24 25# CHECK: Binary Function "foo.cold.1/1(*2)" after building cfg26# CHECK: Parent : foo27 28# CHECK: Binary Function "bar.cold.1/1(*2)" after building cfg29# CHECK: Parent : bar/1(*2)30 31# CHECK: Binary Function "baz.cold.1" after building cfg32# CHECK: Parent : baz{{$}}33 34# CHECK: Binary Function "baz.cold.1/1(*2)" after building cfg35# CHECK: Parent : baz/1(*2)36 37# CHECK: Binary Function "baz.cold.1/2(*2)" after building cfg38# CHECK: Parent : baz/2(*2)39 40#--- main.s41.file "main.s"42  .globl main43  .type main, %function44main:45  .cfi_startproc46# FDATA: 0 [unknown] 0 1 main 0 1 047  cmpl	$0x0, %eax48  je	main.cold.149  retq50  .cfi_endproc51.size main, .-main52 53  .globl foo54  .type foo, %function55foo:56  .cfi_startproc57# FDATA: 0 [unknown] 0 1 foo 0 1 058  cmpl	$0x0, %eax59  je	foo.cold.160  retq61  .cfi_endproc62.size foo, .-foo63 64  .local bar65  .type bar, %function66bar:67  .cfi_startproc68# FDATA: 0 [unknown] 0 1 bar/1 0 1 069  cmpl	$0x0, %eax70  je	bar.cold.171  retq72  .cfi_endproc73.size bar, .-bar74 75  .globl baz76  .type baz, %function77baz:78  .cfi_startproc79# FDATA: 0 [unknown] 0 1 baz 0 1 080  cmpl	$0x0, %eax81  je	baz.cold.182  retq83  .cfi_endproc84.size baz, .-baz85 86  .section .text.cold87  .globl main.cold.188  .type main.cold.1, %function89main.cold.1:90  .cfi_startproc91  pushq	%rbp92  movq	%rsp, %rbp93  movl	$0x0, %eax94  popq	%rbp95  retq96  .cfi_endproc97.size main.cold.1, .-main.cold.198 99  .local foo.cold.1100  .type foo.cold.1, %function101foo.cold.1:102  .cfi_startproc103  pushq	%rbp104  movq	%rsp, %rbp105  movl	$0x0, %eax106  popq	%rbp107  retq108  .cfi_endproc109.size foo.cold.1, .-foo.cold.1110 111  .local bar.cold.1112  .type bar.cold.1, %function113bar.cold.1:114  .cfi_startproc115  pushq	%rbp116  movq	%rsp, %rbp117  movl	$0x0, %eax118  popq	%rbp119  retq120  .cfi_endproc121.size bar.cold.1, .-bar.cold.1122 123  .globl baz.cold.1124  .type baz.cold.1, %function125baz.cold.1:126  .cfi_startproc127  pushq	%rbp128  movq	%rsp, %rbp129  movl	$0x0, %eax130  popq	%rbp131  retq132  .cfi_endproc133.size baz.cold.1, .-baz.cold.1134 135#--- baz.s136.file "baz.s"137  .local baz138  .type baz, %function139baz:140  .cfi_startproc141# FDATA: 0 [unknown] 0 1 baz/1 0 1 0142  cmpl	$0x0, %eax143  je	baz.cold.1144  retq145  .cfi_endproc146.size baz, .-baz147 148  .section .text.cold149  .local baz.cold.1150  .type baz.cold.1, %function151baz.cold.1:152  .cfi_startproc153  pushq	%rbp154  movq	%rsp, %rbp155  movl	$0x0, %eax156  popq	%rbp157  retq158  .cfi_endproc159.size baz.cold.1, .-baz.cold.1160 161#--- baz2.s162.file "baz2.s"163  .local baz164  .type baz, %function165baz:166  .cfi_startproc167# FDATA: 0 [unknown] 0 1 baz/2 0 1 0168  cmpl	$0x0, %eax169  je	baz.cold.1170  retq171  .cfi_endproc172.size baz, .-baz173 174  .section .text.cold175  .local baz.cold.1176  .type baz.cold.1, %function177baz.cold.1:178  .cfi_startproc179  pushq	%rbp180  movq	%rsp, %rbp181  movl	$0x0, %eax182  popq	%rbp183  retq184  .cfi_endproc185.size baz.cold.1, .-baz.cold.1186