1 ; RUN: llc -mtriple x86_64-apple-darwin %s -o - | FileCheck %s --check-prefix=APPLE 2 ; RUN: llc -mtriple x86_64-pc-windows-gnu %s -o - | FileCheck %s --check-prefix=MINGW64 3 ; RUN: llc -mtriple i686-pc-windows-gnu %s -o - | FileCheck %s --check-prefix=MINGW32 4 @_ZTIi = external constant i8* 5 6 define i32 @main() uwtable optsize ssp { 7 ; APPLE: .cfi_startproc 8 ; APPLE: .cfi_personality 155, ___gxx_personality_v0 9 ; APPLE: .cfi_lsda 16, Lexception0 10 ; APPLE: .cfi_def_cfa_offset 16 11 ; APPLE: callq __Unwind_Resume 12 ; APPLE: .cfi_endproc 13 ; APPLE: GCC_except_table0: 14 ; APPLE: Lexception0: 15 16 ; MINGW64: .seh_proc 17 ; MINGW64: .seh_handler __gxx_personality_v0 18 ; MINGW64: .seh_setframe 5, 32 19 ; MINGW64: callq _Unwind_Resume 20 ; MINGW64: .seh_handlerdata 21 ; MINGW64: GCC_except_table0: 22 ; MINGW64: Lexception0: 23 ; MINGW64: .seh_endproc 24 25 ; MINGW32: .cfi_startproc 26 ; MINGW32: .cfi_personality 0, ___gxx_personality_v0 27 ; MINGW32: .cfi_lsda 0, Lexception0 28 ; MINGW32: .cfi_def_cfa_offset 8 29 ; MINGW32: calll __Unwind_Resume 30 ; MINGW32: .cfi_endproc 31 ; MINGW32: GCC_except_table0: 32 ; MINGW32: Lexception0: 33 34 entry: 35 invoke void @_Z1fv() optsize 36 to label %try.cont unwind label %lpad 37 38 lpad: 39 %0 = landingpad { i8*, i32 } personality i8* bitcast (i32 (...)* @__gxx_personality_v0 to i8*) 40 cleanup 41 catch i8* bitcast (i8** @_ZTIi to i8*) 42 br label %eh.resume 43 44 try.cont: 45 ret i32 0 46 47 eh.resume: 48 resume { i8*, i32 } %0 49 } 50 51 declare void @_Z1fv() optsize 52 53 declare i32 @__gxx_personality_v0(...) 54