<commit_before>; RUN: llc -mtriple=x86_64-windows-msvc < %s | FileCheck %s

@str = internal unnamed_addr constant [10 x i8] c"recovered\00", align 1

declare i32 @__C_specific_handler(...)
declare void @crash()
declare i32 @puts(i8*)

define i32 @main() {
entry:
  invoke void @crash()
          to label %__try.cont unwind label %lpad

lpad:
  %0 = landingpad { i8*, i32 } personality i8* bitcast (i32 (...)* @__C_specific_handler to i8*)
          catch i8* null
  call i32 @puts(i8* getelementptr inbounds ([10 x i8]* @str, i64 0, i64 0))
  br label %__try.cont

__try.cont:
  ret i32 0

eh.resume:
  resume { i8*, i32 } %0
}

; CHECK-LABEL: main:
; CHECK: .seh_handlerdata
; CHECK: .long<commit_msg>SEH: Finish writing the catch-all test case<commit_after>; RUN: llc -mtriple=x86_64-windows-msvc < %s | FileCheck %s

@str = internal unnamed_addr constant [10 x i8] c"recovered\00", align 1

declare i32 @__C_specific_handler(...)
declare void @crash()
declare i32 @puts(i8*)

define i32 @main() {
entry:
  invoke void @crash()
          to label %__try.cont unwind label %lpad

lpad:
  %0 = landingpad { i8*, i32 } personality i8* bitcast (i32 (...)* @__C_specific_handler to i8*)
          catch i8* null
  call i32 @puts(i8* getelementptr inbounds ([10 x i8]* @str, i64 0, i64 0))
  br label %__try.cont

__try.cont:
  ret i32 0

eh.resume:
  resume { i8*, i32 } %0
}

; CHECK-LABEL: main:
; CHECK: .seh_handlerdata
; CHECK-NEXT: .long 1
; CHECK-NEXT: .Ltmp{{[0-9]+}}@IMGREL
; CHECK-NEXT: .Ltmp{{[0-9]+}}@IMGREL+1
; CHECK-NEXT: 1
; CHECK-NEXT: .Ltmp{{[0-9]+}}@IMGREL
{'fraction_non_alphanumeric': 0.15394402035623408, 'fraction_numerical': 0.06297709923664122, 'mean_word_length': 3.626470588235294, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4991290', 'n_tokens_mistral': 686, 'n_tokens_neox': 641, 'n_words': 184}