28 lines
1.2 KiB
ArmAsm
28 lines
1.2 KiB
ArmAsm
|
// REQUIRES: x86-registered-target
|
||
|
// RUN: %clang --target=x86_64-pc-linux -fcf-protection -include cet.h -c %s -o - | llvm-readelf -n - | FileCheck %s
|
||
|
// RUN: %clang --target=x86_64-pc-linux -include cet.h -c %s -o - | llvm-readelf -S - | FileCheck %s --check-prefixes=NOCET
|
||
|
// RUN: %clang --target=x86_64-pc-linux -include cet.h -S %s -o - | FileCheck %s --check-prefixes=NOENDBR
|
||
|
// RUN: %clang --target=x86_64-pc-linux -fcf-protection -include cet.h -S %s -o - | FileCheck %s --check-prefixes=ENDBR64
|
||
|
|
||
|
// RUN: %clang --target=i386-pc-linux -fcf-protection -include cet.h -c %s -o - | llvm-readelf -n - | FileCheck %s
|
||
|
// RUN: %clang --target=i386-pc-linux -include cet.h -c %s -o - | llvm-readelf -S - | FileCheck %s --check-prefixes=NOCET
|
||
|
// RUN: %clang --target=i386-pc-linux -include cet.h -S %s -o - | FileCheck %s --check-prefixes=NOENDBR
|
||
|
// RUN: %clang --target=i386-pc-linux -fcf-protection -include cet.h -S %s -o - | FileCheck %s --check-prefixes=ENDBR32
|
||
|
|
||
|
// CHECK: IBT, SHSTK
|
||
|
|
||
|
// NOCET: Section Headers
|
||
|
// NOCET-NOT: .note.gnu.property
|
||
|
|
||
|
// NOENDBR: foo
|
||
|
// NOENDBR-NOT: endbr
|
||
|
|
||
|
// ENDBR64: endbr64
|
||
|
// ENDBR32: endbr32
|
||
|
.text
|
||
|
.globl foo
|
||
|
.type foo, @function
|
||
|
foo:
|
||
|
_CET_ENDBR
|
||
|
ret
|