# REQUIRES: x86
# RUN: llvm-mc -triple x86_64-windows-msvc -filetype=obj -o %t.obj %s
# RUN: yaml2obj %p/Inputs/guardcf-align-foobar.yaml \
# RUN:     > %T/guardcf-align-foobar.obj
# RUN: lld-link -out:%T/guardcf-align.exe -entry:main -guard:cf \
# RUN:     %t.obj %T/guardcf-align-foobar.obj
# RUN: llvm-readobj --coff-load-config %T/guardcf-align.exe | FileCheck %s

# Check that the gfids table contains at least one entry that ends in 0
# and no entries that end in something other than 0.
# CHECK: GuardFidTable [
# CHECK-NOT: 0x{{[0-9A-Fa-f]+[^0]$}}
# CHECK: 0x{{[0-9A-Fa-f]+0$}}
# CHECK-NOT: 0x{{[0-9A-Fa-f]+[^0]$}}
# CHECK: ]

# @feat.00 and _load_config_used to indicate we have gfids.
        .def     @feat.00;
        .scl    3;
        .type   0;
        .endef
        .globl  @feat.00
@feat.00 = 0x801

        .section .rdata,"dr"
.globl _load_config_used
_load_config_used:
        .long 256
        .fill 124, 1, 0
        .quad __guard_fids_table
        .quad __guard_fids_count
        .long __guard_flags
        .fill 128, 1, 0

# Functions that are called indirectly.
        .section        .gfids$y,"dr"
        .symidx foo


        .section .text,"rx"
        .global main
main:
        movq foo, %rcx
        xorq %rax, %rax
        callq bar
        retq
