You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
27 lines
1.1 KiB
27 lines
1.1 KiB
4 months ago
|
// REQUIRES: aarch64-registered-target
|
||
|
|
||
|
// When -mmark-bti-property is passed the generated file object gets BTI marking.
|
||
|
// RUN: %clang -target arm64-linux-none -mmark-bti-property -c -o - %s | llvm-readobj -n - | FileCheck -check-prefix=CHECK -check-prefix=CHECK_GEN %s
|
||
|
// RUN: %clang -target arm64-linux-none -DNOTE_PRESENT -c %s -o - | llvm-readobj -n - | FileCheck -check-prefix=CHECK -check-prefix=CHECK_PRESET %s
|
||
|
// RUN: %clang -target arm64-linux-none -mmark-bti-property -DNOTE_PRESENT -c %s -o - | llvm-readobj -n - | FileCheck -check-prefix=CHECK -check-prefix=CHECK_PRESET %s
|
||
|
// RUN: %clang -target arm64-linux-none -mmark-bti-property -DNOTE_PRESENT -c %s -o - 2>&1 | FileCheck -check-prefix=CHECK_WARNING %s
|
||
|
//
|
||
|
// CHECK_WARNING: The .note.gnu.property is not emitted because it is already present.
|
||
|
// CHECK: Name: .note.gnu.property
|
||
|
// CHECK: Type: NT_GNU_PROPERTY_TYPE_0
|
||
|
// CHECK_GEN: aarch64 feature: BTI
|
||
|
// CHECK_PRESET: aarch64 feature: BTI, PAC
|
||
|
|
||
|
#ifdef NOTE_PRESENT
|
||
|
.section .note.gnu.property, "a";
|
||
|
.balign 8;
|
||
|
.long 4;
|
||
|
.long 0x10;
|
||
|
.long 0x5
|
||
|
.asciz "GNU"
|
||
|
.long 0xc0000000
|
||
|
.long 4
|
||
|
.long 3
|
||
|
.long 0
|
||
|
#endif
|