3 # The __guard_fids_table is a DefinedSynthetic when control flow guard is
4 # enabled and there are entries to be added to the fids table. This test uses
5 # this to check that DefinedSynthetic symbols are being written to the COFF
8 # RUN: llvm-mc -triple x86_64-windows-msvc %s -filetype=obj -o %t.obj
9 # RUN: lld-link %t.obj -guard:cf -out:%t.exe -entry:main -debug:symtab
10 # RUN: llvm-readobj --symbols %t.exe | FileCheck --check-prefix=CHECK %s
12 # CHECK: Name: __guard_fids_table
14 # CHECK-NEXT: Section: .rdata (2)
17 # We need @feat.00 to have 0x800 to indicate /guard:cf.
24 .def main; .scl 2; .type 32; .endef
25 .globl main # -- Begin function main
30 .section .gfids$y,"dr"
32 .section .giats$y,"dr"
33 .section .gljmp$y,"dr"
37 .globl _load_config_used
42 .quad __guard_fids_table
43 .quad __guard_fids_count
46 .quad __guard_iat_table
47 .quad __guard_iat_count
48 .quad __guard_longjmp_table
49 .quad __guard_longjmp_count
51 .quad __guard_eh_cont_table
52 .quad __guard_eh_cont_count