mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-12-02 16:36:40 +00:00
ec8f60f452
This patch make LLVM emit the processor specific program property types defined in AArch64 ELF spec https://developer.arm.com/docs/ihi0056/f/elf-for-the-arm-64-bit-architecture-aarch64-abi-2019q2-documentation A file containing no functions gets both property flags. Otherwise, a property is set iff all the functions in the file have the corresponding attribute. Patch by Daniel Kiss and Momchil Velikov. Differential Revision: https://reviews.llvm.org/D71019
24 lines
589 B
LLVM
24 lines
589 B
LLVM
; RUN: llc -mtriple=aarch64-linux %s -o - 2>&1 | \
|
|
; RUN: FileCheck %s --check-prefix=ASM
|
|
; RUN: llc -mtriple=aarch64-linux %s -filetype=obj -o - | \
|
|
; RUN: llvm-readelf -S | FileCheck %s --check-prefix=OBJ
|
|
|
|
define dso_local i32 @f() #0 {
|
|
entry:
|
|
ret i32 0
|
|
}
|
|
|
|
define dso_local i32 @g() #1 {
|
|
entry:
|
|
ret i32 0
|
|
}
|
|
|
|
attributes #0 = { "sign-return-address"="non-leaf" }
|
|
|
|
attributes #1 = { "branch-target-enforcement" }
|
|
|
|
; No common attribute, no note section
|
|
; ASM: warning: not setting BTI in feature flags
|
|
; ASM-NOT: .note.gnu.property
|
|
; OBJ-NOT: .note.gnu.property
|