30 lines · plain
1## Check that BOLT doesn't consider end-of-section symbols (e.g., _etext) as2## functions.3 4# REQUIRES: x86_64-linux, asserts5 6# RUN: llvm-mc -filetype=obj -triple x86_64-unknown-linux %s -o %t.o7# RUN: ld.lld %t.o -o %t.exe -q8# RUN: llvm-bolt %t.exe -o %t.null --print-cfg --debug-only=bolt 2>&1 \9# RUN: | FileCheck %s10 11# CHECK: considering symbol etext for function12# CHECK-NEXT: rejecting as symbol points to end of its section13# CHECK-NOT: Binary Function "etext{{.*}}" after building cfg14 15 16 .text17 .globl _start18 .type _start,@function19_start:20 retq21 .size _start, .-_start22 23 .align 0x100024 .globl etext25etext:26 27 .data28.Lfoo:29 .word 030