diff options
Diffstat (limited to 'llvm/test/CodeGen/X86/note-cet-property.ll')
| -rw-r--r-- | llvm/test/CodeGen/X86/note-cet-property.ll | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/X86/note-cet-property.ll b/llvm/test/CodeGen/X86/note-cet-property.ll new file mode 100644 index 00000000000..2b7dbbeb38c --- /dev/null +++ b/llvm/test/CodeGen/X86/note-cet-property.ll @@ -0,0 +1,32 @@ +; RUN: llc -mtriple i686-pc-linux < %s | FileCheck %s --check-prefix=X86 +; RUN: llc -mtriple x86_64-pc-linux < %s | FileCheck %s --check-prefix=X86_64 + +; This test checks that the compiler emits a .note.gnu.property section for +; modules with "cf-protection" module flags. + +; X86: .section .note.gnu.property,"a",@note +; X86-NEXT: .p2align 2 +; X86-NEXT: .long 4 +; X86-NEXT: .long 12 +; X86-NEXT: .long 5 +; X86-NEXT: .asciz "GNU" +; X86-NEXT: .long 3221225474 +; X86-NEXT: .long 4 +; X86-NEXT: .long 3 +; X86-NEXT: .p2align 2 + +; X86_64: .section .note.gnu.property,"a",@note +; X86_64-NEXT: .p2align 3 +; X86_64-NEXT: .long 4 +; X86_64-NEXT: .long 16 +; X86_64-NEXT: .long 5 +; X86_64-NEXT: .asciz "GNU" +; X86_64-NEXT: .long 3221225474 +; X86_64-NEXT: .long 8 +; X86_64-NEXT: .quad 3 +; X86_64-NEXT: .p2align 3 + +!llvm.module.flags = !{!0, !1} + +!0 = !{i32 4, !"cf-protection-return", i32 1} +!1 = !{i32 4, !"cf-protection-branch", i32 1} |

