# REQUIRES: x86
# RUN: split-file %s %t.dir
# RUN: llvm-mc -triple i686-windows-msvc %t.dir/safeseh-md.s -filetype=obj -o %t.obj
# RUN: llvm-lib -machine:x86 -out:%t.dir/except_handler3.lib -def:%t.dir/except_handler3.def
# RUN: lld-link %t.obj %t.dir/except_handler3.lib -safeseh -out:%t.exe -opt:noref -entry:main
# RUN: llvm-readobj --coff-load-config %t.exe | FileCheck %s
# CHECK: SEHTable [
# CHECK-NEXT: 0x
# CHECK-NEXT: ]
#--- safeseh-md.s
.def @feat.00;
.scl 3;
.type 0;
.endef
.globl @feat.00
@feat.00 = 1
.def _main;
.scl 2;
.type 32;
.endef
.section .text,"xr",one_only,_main
.globl _main
_main:
movl $42, %eax
ret
.safeseh __except_handler3
.section .rdata,"dr"
.globl __load_config_used
__load_config_used:
.long 72
.fill 60, 1, 0
.long ___safe_se_handler_table
.long ___safe_se_handler_count
#--- except_handler3.def
NAME except_handler3.dll
EXPORTS
_except_handler3