Home | History | Annotate | Download | only in AsmParser
      1 # RUN: llvm-mc -triple x86_64-pc-win32 %s | FileCheck %s
      2 
      3 # CHECK: .seh_proc func
      4 # CHECK: .seh_pushframe @code
      5 # CHECK: .seh_stackalloc 24
      6 # CHECK: .seh_savereg 6, 16
      7 # CHECK: .seh_savexmm 8, 0
      8 # CHECK: .seh_pushreg 3
      9 # CHECK: .seh_setframe 3, 0
     10 # CHECK: .seh_endprologue
     11 # CHECK: .seh_handler __C_specific_handler, @except
     12 # CHECK-NOT: .section{{.*}}.xdata
     13 # CHECK: .seh_handlerdata
     14 # CHECK: .text
     15 # CHECK: .seh_startchained
     16 # CHECK: .seh_endprologue
     17 # CHECK: .seh_endchained
     18 # CHECK: .seh_endproc
     19 
     20     .text
     21     .globl func
     22     .def func; .scl 2; .type 32; .endef
     23     .seh_proc func
     24 func:
     25     .seh_pushframe @code
     26     subq $24, %rsp
     27     .seh_stackalloc 24
     28     movq %rsi, 16(%rsp)
     29     .seh_savereg %rsi, 16
     30     movups %xmm8, (%rsp)
     31     .seh_savexmm %xmm8, 0
     32     pushq %rbx
     33     .seh_pushreg 3
     34     mov %rsp, %rbx
     35     .seh_setframe 3, 0
     36     .seh_endprologue
     37     .seh_handler __C_specific_handler, @except
     38     .seh_handlerdata
     39     .long 0
     40     .text
     41     .seh_startchained
     42     .seh_endprologue
     43     .seh_endchained
     44     lea (%rbx), %rsp
     45     pop %rbx
     46     addq $24, %rsp
     47     ret
     48     .seh_endproc
     49