mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 11:13:28 +01: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
27 lines
666 B
LLVM
27 lines
666 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 --notes | 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 = { "branch-target-enforcement" "sign-return-address"="non-leaf" }
|
|
|
|
attributes #1 = { "sign-return-address"="all" }
|
|
|
|
; Only the common atttribute (PAC)
|
|
; ASM: warning: not setting BTI in feature flags
|
|
; ASM: .word 3221225472
|
|
; ASM-NEXT: .word 4
|
|
; ASM-NEXT .word 2
|
|
|
|
; OBJ: Properties: aarch64 feature: PAC
|