xref: /llvm-project/bolt/test/X86/nop-function.s (revision 9742c25b9894d4805e05369c50cc8e0562a3cb92)
1*9742c25bSMaksim Panchenko## Check that BOLT preserves nop instruction if it's the only instruction
2*9742c25bSMaksim Panchenko## in a function.
3*9742c25bSMaksim Panchenko
4*9742c25bSMaksim Panchenko# REQUIRES: system-linux
5*9742c25bSMaksim Panchenko
6*9742c25bSMaksim Panchenko# RUN: llvm-mc -filetype=obj -triple x86_64-unknown-linux %s -o %t.o
7*9742c25bSMaksim Panchenko# RUN: ld.lld %t.o -o %t.exe -q
8*9742c25bSMaksim Panchenko# RUN: llvm-bolt %t.exe -o %t.bolt.exe --relocs=0
9*9742c25bSMaksim Panchenko# RUN: llvm-objdump -d %t.bolt.exe | FileCheck %s
10*9742c25bSMaksim Panchenko
11*9742c25bSMaksim Panchenko  .text
12*9742c25bSMaksim Panchenko  .globl nop_function
13*9742c25bSMaksim Panchenko  .type nop_function,@function
14*9742c25bSMaksim Panchenkonop_function:
15*9742c25bSMaksim Panchenko  .cfi_startproc
16*9742c25bSMaksim Panchenko  nop
17*9742c25bSMaksim Panchenko# CHECK: <nop_function>:
18*9742c25bSMaksim Panchenko# CHECK-NEXT: nop
19*9742c25bSMaksim Panchenko
20*9742c25bSMaksim Panchenko  .size nop_function, .-nop_function
21*9742c25bSMaksim Panchenko  .cfi_endproc
22*9742c25bSMaksim Panchenko
23*9742c25bSMaksim Panchenko
24*9742c25bSMaksim Panchenko  .globl _start
25*9742c25bSMaksim Panchenko  .type _start,@function
26*9742c25bSMaksim Panchenko_start:
27*9742c25bSMaksim Panchenko  .cfi_startproc
28*9742c25bSMaksim Panchenko  call nop_function
29*9742c25bSMaksim Panchenko  .size _start, .-_start
30*9742c25bSMaksim Panchenko  .cfi_endproc
31