xref: /llvm-project/bolt/test/X86/fragment-lite-reverse.s (revision 11791ae7b0b05b8bd8d806331ff51da618912cf8)
1## Check that BOLT in lite mode processes fragments as expected.
2
3# RUN: llvm-mc -filetype=obj -triple x86_64-unknown-unknown %s -o %t.o
4# RUN: link_fdata %s %t.o %t.fdata
5# RUN: %clang %cflags %t.o -o %t.exe -Wl,-q
6# RUN: llvm-bolt %t.exe -o %t.out --lite=1 --data %t.fdata -v=1 2>&1 \
7# RUN:   | FileCheck %s
8
9# CHECK: BOLT-INFO: skipping processing main.cold.1 together with parent function
10# CHECK: BOLT-INFO: skipping processing foo.cold.1/1 together with parent function
11# CHECK: BOLT-INFO: skipping processing bar.cold.1/1 together with parent function
12
13  .globl main
14  .type main, %function
15main:
16  .cfi_startproc
17  cmpl	$0x0, %eax
18  je	main.cold.1
19  retq
20  .cfi_endproc
21.size main, .-main
22
23  .globl foo
24  .type foo, %function
25foo:
26  .cfi_startproc
27  cmpl	$0x0, %eax
28  je	foo.cold.1
29  retq
30  .cfi_endproc
31.size foo, .-foo
32
33  .local bar
34  .type bar, %function
35bar:
36  .cfi_startproc
37  cmpl	$0x0, %eax
38  je	bar.cold.1
39  retq
40  .cfi_endproc
41.size bar, .-bar
42
43  .section .text.cold
44  .globl main.cold.1
45  .type main.cold.1, %function
46main.cold.1:
47# FDATA: 0 [unknown] 0 1 main.cold.1 0 1 0
48  .cfi_startproc
49  pushq	%rbp
50  movq	%rsp, %rbp
51  movl	$0x0, %eax
52  popq	%rbp
53  retq
54  .cfi_endproc
55.size main.cold.1, .-main.cold.1
56
57  .local foo.cold.1
58  .type foo.cold.1, %function
59foo.cold.1:
60# FDATA: 0 [unknown] 0 1 foo.cold.1/1 0 1 0
61  .cfi_startproc
62  pushq	%rbp
63  movq	%rsp, %rbp
64  movl	$0x0, %eax
65  popq	%rbp
66  retq
67  .cfi_endproc
68.size foo.cold.1, .-foo.cold.1
69
70  .local bar.cold.1
71  .type bar.cold.1, %function
72bar.cold.1:
73# FDATA: 0 [unknown] 0 1 bar.cold.1/1 0 1 0
74  .cfi_startproc
75  pushq	%rbp
76  movq	%rsp, %rbp
77  movl	$0x0, %eax
78  popq	%rbp
79  retq
80  .cfi_endproc
81.size bar.cold.1, .-bar.cold.1
82