mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-26 01:46:06 +00:00

section-end-sym.s contains x86_64 assembly instruction execution on target. I have changed REQURIES: field system-linux --> x86_64-linux This came up while testing LLVM 16.0.1 release on AArch64 Linux.
30 lines
655 B
ArmAsm
30 lines
655 B
ArmAsm
## Check that BOLT doesn't consider end-of-section symbols (e.g., _etext) as
|
|
## functions.
|
|
|
|
# REQUIRES: x86_64-linux, asserts
|
|
|
|
# RUN: llvm-mc -filetype=obj -triple x86_64-unknown-linux %s -o %t.o
|
|
# RUN: ld.lld %t.o -o %t.exe -q
|
|
# RUN: llvm-bolt %t.exe -o /dev/null --print-cfg --debug-only=bolt 2>&1 \
|
|
# RUN: | FileCheck %s
|
|
|
|
# CHECK: considering symbol etext for function
|
|
# CHECK-NEXT: rejecting as symbol points to end of its section
|
|
# CHECK-NOT: Binary Function "etext{{.*}}" after building cfg
|
|
|
|
|
|
.text
|
|
.globl _start
|
|
.type _start,@function
|
|
_start:
|
|
retq
|
|
.size _start, .-_start
|
|
|
|
.align 0x1000
|
|
.globl etext
|
|
etext:
|
|
|
|
.data
|
|
.Lfoo:
|
|
.word 0
|