• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1; RUN: llc -mtriple=x86_64-windows-gnu < %s | FileCheck %s
2
3declare void @throwit()
4declare void @__gxx_personality_seh0(...)
5declare void @__gcc_personality_seh0(...)
6
7define void @use_gxx_seh()
8    personality void (...)* @__gxx_personality_seh0 {
9entry:
10  call void @throwit()
11  unreachable
12}
13
14; CHECK-LABEL: use_gxx_seh:
15; CHECK: .seh_proc use_gxx_seh
16; CHECK-NOT: .seh_handler __gxx_personality_seh0
17; CHECK: callq throwit
18; CHECK: .seh_handlerdata
19; CHECK: .seh_endproc
20
21define void @use_gcc_seh()
22    personality void (...)* @__gcc_personality_seh0 {
23entry:
24  call void @throwit()
25  unreachable
26}
27
28; CHECK-LABEL: use_gcc_seh:
29; CHECK: .seh_proc use_gcc_seh
30; CHECK-NOT: .seh_handler __gcc_personality_seh0
31; CHECK: callq throwit
32; CHECK: .seh_handlerdata
33; CHECK: .seh_endproc
34
35