[llvm] [WebAssembly] Fix: fixCallUnwindMismatches after fixCatchUnwindMismatches (PR #187484)

via llvm-commits llvm-commits at lists.llvm.org
Thu Mar 19 05:31:58 PDT 2026


github-actions[bot] wrote:

<!--PREMERGE ADVISOR COMMENT: Linux-->
# :penguin: Linux x64 Test Results

* 171483 tests passed
* 3053 tests skipped
* 2 tests failed

## Failed Tests
(click on a test name to see its output)

### LLVM
<details>
<summary>LLVM.CodeGen/WebAssembly/cfg-stackify-eh-legacy.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/cfg-stackify-eh-legacy.ll -disable-wasm-fallthrough-return-opt -wasm-disable-explicit-locals -wasm-keep-registers -disable-block-placement -verify-machineinstrs -fast-isel=false -machine-sink-split-probability-threshold=0 -cgp-freq-ratio-to-skip-merge=1000 -wasm-enable-eh -wasm-use-legacy-eh -exception-model=wasm -mattr=+exception-handling,bulk-memory | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/cfg-stackify-eh-legacy.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -disable-wasm-fallthrough-return-opt -wasm-disable-explicit-locals -wasm-keep-registers -disable-block-placement -verify-machineinstrs -fast-isel=false -machine-sink-split-probability-threshold=0 -cgp-freq-ratio-to-skip-merge=1000 -wasm-enable-eh -wasm-use-legacy-eh -exception-model=wasm -mattr=+exception-handling,bulk-memory
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/cfg-stackify-eh-legacy.ll
# note: command had no output on stdout or stderr
# RUN: at line 3
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/cfg-stackify-eh-legacy.ll -disable-wasm-fallthrough-return-opt -disable-block-placement -verify-machineinstrs -fast-isel=false -machine-sink-split-probability-threshold=0 -cgp-freq-ratio-to-skip-merge=1000 -wasm-enable-eh -wasm-use-legacy-eh -exception-model=wasm -mattr=+exception-handling,bulk-memory
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -disable-wasm-fallthrough-return-opt -disable-block-placement -verify-machineinstrs -fast-isel=false -machine-sink-split-probability-threshold=0 -cgp-freq-ratio-to-skip-merge=1000 -wasm-enable-eh -wasm-use-legacy-eh -exception-model=wasm -mattr=+exception-handling,bulk-memory
# .---command stdout------------
# | 	.file	"<stdin>"
# | 	.globaltype	__stack_pointer, i32
# | 	.tagtype	__cpp_exception i32
# | 	.functype	two_catches () -> ()
# | 	.functype	nested_catch () -> ()
# | 	.functype	nested_try () -> ()
# | 	.functype	loop_within_catch () -> ()
# | 	.functype	block_try_markers () -> ()
# | 	.functype	loop_try_markers (i32) -> ()
# | 	.functype	unwind_mismatches_0 () -> ()
# | 	.functype	unwind_mismatches_1 () -> ()
# | 	.functype	unwind_mismatches_2 () -> ()
# | 	.functype	unwind_mismatches_3 () -> (i32)
# | 	.functype	unwind_mismatches_4 () -> ()
# | 	.functype	unwind_mismatches_5 () -> ()
# | 	.functype	unwind_mismatches_with_loop () -> ()
# | 	.functype	unstackify_when_fixing_unwind_mismatch (i32) -> ()
# | 	.functype	cfg_sort_order (i32) -> ()
# | 	.functype	mem_intrinsics (i32, i32) -> ()
# | 	.functype	try_marker_with_stackified_input () -> ()
# | 	.functype	loop_exception_region () -> ()
# | 	.functype	remove_unnecessary_instrs (i32) -> ()
# | 	.functype	remove_unnecessary_br () -> ()
# | 	.functype	loop_contains_exception (i32) -> ()
# | 	.functype	fix_function_end_return_type_with_try_catch (i32) -> (i32)
# | 	.functype	branch_remapping_after_fixing_unwind_mismatches_0 (i32) -> ()
# | 	.functype	branch_remapping_after_fixing_unwind_mismatches_1 () -> ()
# | 	.functype	wasm_eh_func_info_regression_test () -> ()
# | 	.functype	exception_grouping_0 () -> ()
# | 	.functype	exception_grouping_1 () -> ()
# | 	.functype	exception_grouping_2 () -> ()
# | 	.functype	foo () -> ()
# | 	.functype	bar () -> ()
# | 	.functype	baz () -> (i32)
# | 	.functype	qux (i32) -> (i32)
# | 	.functype	quux (i32) -> ()
# | 	.functype	fun (i32) -> ()
# | 	.functype	nothrow (i32) -> ()
# | 	.functype	nothrow_i32 () -> (i32)
# | 	.functype	_ZN6ObjectD2Ev (i32) -> (i32)
# | 	.functype	_ZN7MyClassD2Ev (i32) -> (i32)
# | 	.functype	_ZN7MyClassC2ERKS_ (i32, i32) -> (i32)
# | 	.functype	__gxx_wasm_personality_v0 (i32) -> (i32)
# | 	.functype	__cxa_allocate_exception (i32) -> (i32)
# | 	.functype	__cxa_throw (i32, i32, i32) -> ()
# | 	.functype	__cxa_begin_catch (i32) -> (i32)
# | 	.functype	__cxa_end_catch () -> ()
# | 	.functype	__cxa_get_exception_ptr (i32) -> (i32)
# | 	.functype	_ZSt9terminatev () -> ()
# | 	.functype	_Unwind_CallPersonality (i32) -> (i32)
# | 	.section	.text.two_catches,"",@
# | 	.globl	two_catches                     # -- Begin function two_catches
# | 	.type	two_catches, at function
# | two_catches:                            # @two_catches
# | .Lfunc_begin0:
# | 	.functype	two_catches () -> ()
# | 	.local  	i32, i32
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	try     	
# | .Ltmp0:                                 # EH_LABEL
# | 	call	foo
# | .Ltmp1:                                 # EH_LABEL
# | .LBB0_1:                                # %catch.start
# | .Ltmp2:                                 # EH_LABEL
# | 	catch   	__cpp_exception                 # catch0:
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table0
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	0
# | 	i32.store	__wasm_lpad_context
# | 	local.get	1
# | 	call	_Unwind_CallPersonality
# | 	drop
# | 	block   	
# | 	i32.const	8
# | 	i32.load	__wasm_lpad_context
# | 	local.tee	0
# | 	i32.const	2
# | 	i32.ne  
# | 	br_if   	0                               # 0: down to label1
# | # %bb.2:                                # %catch2
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	call	__cxa_end_catch
# | 	br      	1                               # 1: down to label0
# | .LBB0_3:                                # %catch.fallthrough
# | 	end_block                               # label1:
# | 	block   	
# | 	local.get	0
# | 	i32.const	1
# | 	i32.ne  
# | 	br_if   	0                               # 0: down to label2
# | # %bb.4:                                # %catch
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	call	__cxa_end_catch
# | 	br      	1                               # 1: down to label0
# | .LBB0_5:                                # %rethrow
# | 	end_block                               # label2:
# | 	rethrow 	0                               # to caller
# | .LBB0_6:                                # %try.cont
# | 	end_try                                 # label0:
# | 	return
# | 	end_function
# | .Lfunc_end0:
# | 	.section	.rodata.gcc_except_table,"",@
# | 	.p2align	2, 0x0
# | GCC_except_table0:
# | .Lexception0:
# | 	.int8	255                             # @LPStart Encoding = omit
# | 	.int8	0                               # @TType Encoding = absptr
# | 	.uleb128 .Lttbase0-.Lttbaseref0
# | .Lttbaseref0:
# | 	.int8	1                               # Call site Encoding = uleb128
# | 	.uleb128 .Lcst_end0-.Lcst_begin0
# | .Lcst_begin0:
# | 	.int8	0                               # >> Call Site 0 <<
# |                                         #   On exception at call site 0
# | 	.int8	3                               #   Action: 2
# | .Lcst_end0:
# | 	.int8	1                               # >> Action Record 1 <<
# |                                         #   Catch TypeInfo 1
# | 	.int8	0                               #   No further actions
# | 	.int8	2                               # >> Action Record 2 <<
# |                                         #   Catch TypeInfo 2
# | 	.int8	125                             #   Continue to action 1
# | 	.p2align	2, 0x0
# |                                         # >> Catch TypeInfos <<
# | 	.int32	_ZTIi                           # TypeInfo 2
# | 	.int32	_ZTId                           # TypeInfo 1
# | .Lttbase0:
# | 	.p2align	2, 0x0
# | .LGCC_except_table_end0:
# | 	.size	GCC_except_table0, .LGCC_except_table_end0-GCC_except_table0
# |                                         # -- End function
# | 	.section	.text.nested_catch,"",@
# | 	.globl	nested_catch                    # -- Begin function nested_catch
# | 	.type	nested_catch, at function
# | nested_catch:                           # @nested_catch
# | .Lfunc_begin1:
# | 	.functype	nested_catch () -> ()
# | 	.local  	i32, i32
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	try     	
# | .Ltmp3:                                 # EH_LABEL
# | 	call	foo
# | .Ltmp4:                                 # EH_LABEL
# | .LBB1_1:                                # %catch.start
# | .Ltmp5:                                 # EH_LABEL
# | 	catch   	__cpp_exception                 # catch3:
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table1
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	0
# | 	i32.store	__wasm_lpad_context
# | 	local.get	1
# | 	call	_Unwind_CallPersonality
# | 	drop
# | 	block   	
# | 	block   	
# | 	i32.const	8
# | 	i32.load	__wasm_lpad_context
# | 	i32.const	1
# | 	i32.ne  
# | 	br_if   	0                               # 0: down to label5
# | # %bb.2:                                # %catch
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	try     	
# | 	try     	
# | .Ltmp6:                                 # EH_LABEL
# | 	call	foo
# | .Ltmp7:                                 # EH_LABEL
# | 	br      	3                               # 3: down to label4
# | .LBB1_3:                                # %catch.start3
# | .Ltmp8:                                 # EH_LABEL
# | 	catch   	__cpp_exception                 # catch7:
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table1
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	1
# | 	i32.store	__wasm_lpad_context
# | 	local.get	1
# | 	call	_Unwind_CallPersonality
# | 	drop
# | 	block   	
# | 	block   	
# | 	i32.const	8
# | 	i32.load	__wasm_lpad_context
# | 	i32.const	1
# | 	i32.ne  
# | 	br_if   	0                               # 0: down to label9
# | # %bb.4:                                # %catch6
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	try     	
# | .Ltmp9:                                 # EH_LABEL
# | 	call	foo
# | .Ltmp10:                                # EH_LABEL
# | 	br      	2                               # 2: down to label8
# | .LBB1_5:                                # %ehcleanup
# | .Ltmp11:                                # EH_LABEL
# | 	catch_all                               # catch10:
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	try     	
# | 	call	__cxa_end_catch
# | # %bb.6:
# | 	delegate 	 8                      # label/catch11: to caller
# | .LBB1_7:
# | 	rethrow 	0                               # down to catch6
# | .LBB1_8:                                # %rethrow5
# | 	end_try                                 # label10:
# | 	end_block                               # label9:
# | 	rethrow 	1                               # down to catch6
# | .LBB1_9:                                # %invoke.cont8
# | 	end_block                               # label8:
# | 	try     	
# | 	call	__cxa_end_catch
# | # %bb.10:
# | 	delegate 	 5                      # label/catch12: to caller
# | .LBB1_11:
# | 	br      	3                               # 3: down to label4
# | .LBB1_12:                               # %ehcleanup9
# | 	end_try                                 # label7:
# | .Ltmp12:                                # EH_LABEL
# | 	catch_all                               # catch6:
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	call	__cxa_end_catch
# | 	rethrow 	0                               # to caller
# | .LBB1_13:                               # %rethrow
# | 	end_try                                 # label6:
# | 	end_block                               # label5:
# | 	rethrow 	1                               # to caller
# | .LBB1_14:                               # %try.cont
# | 	end_block                               # label4:
# | 	call	__cxa_end_catch
# | .LBB1_15:                               # %try.cont11
# | 	end_try                                 # label3:
# | 	return
# | 	end_function
# | .Lfunc_end1:
# | 	.section	.rodata.gcc_except_table,"",@
# | 	.p2align	2, 0x0
# | GCC_except_table1:
# | .Lexception1:
# | 	.int8	255                             # @LPStart Encoding = omit
# | 	.int8	0                               # @TType Encoding = absptr
# | 	.uleb128 .Lttbase1-.Lttbaseref1
# | .Lttbaseref1:
# | 	.int8	1                               # Call site Encoding = uleb128
# | 	.uleb128 .Lcst_end1-.Lcst_begin1
# | .Lcst_begin1:
# | 	.int8	0                               # >> Call Site 0 <<
# |                                         #   On exception at call site 0
# | 	.int8	1                               #   Action: 1
# | 	.int8	1                               # >> Call Site 1 <<
# |                                         #   On exception at call site 1
# | 	.int8	1                               #   Action: 1
# | .Lcst_end1:
# | 	.int8	1                               # >> Action Record 1 <<
# |                                         #   Catch TypeInfo 1
# | 	.int8	0                               #   No further actions
# | 	.p2align	2, 0x0
# |                                         # >> Catch TypeInfos <<
# | 	.int32	_ZTIi                           # TypeInfo 1
# | .Lttbase1:
# | 	.p2align	2, 0x0
# | .LGCC_except_table_end1:
# | 	.size	GCC_except_table1, .LGCC_except_table_end1-GCC_except_table1
# |                                         # -- End function
# | 	.section	.text.nested_try,"",@
# | 	.globl	nested_try                      # -- Begin function nested_try
# | 	.type	nested_try, at function
# | nested_try:                             # @nested_try
# | .Lfunc_begin2:
# | 	.functype	nested_try () -> ()
# | 	.local  	i32, i32
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	try     	
# | 	try     	
# | .Ltmp13:                                # EH_LABEL
# | 	call	foo
# | .Ltmp14:                                # EH_LABEL
# | .LBB2_1:                                # %catch.start
# | .Ltmp15:                                # EH_LABEL
# | 	catch   	__cpp_exception                 # catch14:
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | .Ltmp16:                                # EH_LABEL
# | 	call	__cxa_end_catch
# | .Ltmp17:                                # EH_LABEL
# | # %bb.2:                                # %invoke.cont1
# | .LBB2_3:                                # %catch.start3
# | 	end_try                                 # label14:
# | .Ltmp18:                                # EH_LABEL
# | 	catch   	__cpp_exception                 # catch13:
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	call	__cxa_end_catch
# | .LBB2_4:                                # %try.cont7
# | 	end_try                                 # label13:
# | 	return
# | 	end_function
# | .Lfunc_end2:
# |                                         # -- End function
# | 	.section	.text.loop_within_catch,"",@
# | 	.globl	loop_within_catch               # -- Begin function loop_within_catch
# | 	.type	loop_within_catch, at function
# | loop_within_catch:                      # @loop_within_catch
# | .Lfunc_begin3:
# | 	.functype	loop_within_catch () -> ()
# | 	.local  	i32, i32
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	try     	
# | .Ltmp19:                                # EH_LABEL
# | 	call	foo
# | .Ltmp20:                                # EH_LABEL
# | .LBB3_1:                                # %catch.start
# | .Ltmp21:                                # EH_LABEL
# | 	catch   	__cpp_exception                 # catch15:
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	i32.const	0
# | 	local.set	1
# | .LBB3_2:                                # %for.cond
# |                                         # =>This Inner Loop Header: Depth=1
# | 	loop    	                                # label16:
# | 	block   	
# | 	block   	
# | 	local.get	1
# | 	i32.const	49
# | 	i32.gt_s
# | 	br_if   	0                               # 0: down to label18
# | # %bb.3:                                # %for.body
# |                                         #   in Loop: Header=BB3_2 Depth=1
# | 	try     	
# | .Ltmp22:                                # EH_LABEL
# | 	call	foo
# | .Ltmp23:                                # EH_LABEL
# | 	br      	2                               # 2: down to label17
# | .LBB3_4:                                # %ehcleanup
# | .Ltmp24:                                # EH_LABEL
# | .Ltmp25:                                # EH_LABEL
# | 	catch_all                               # catch19:
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	try     	
# | 	call	__cxa_end_catch
# | .Ltmp26:                                # EH_LABEL
# | .LBB3_5:                                # %terminate
# | .Ltmp27:                                # EH_LABEL
# | 	catch_all                               # catch20:
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	call	_ZSt9terminatev
# | 	unreachable
# | .LBB3_6:                                # %invoke.cont2
# | 	end_try                                 # label20:
# | 	rethrow 	0                               # to caller
# | .LBB3_7:                                # %for.end
# | 	end_try                                 # label19:
# | 	end_block                               # label18:
# | 	call	__cxa_end_catch
# | 	br      	2                               # 2: down to label15
# | .LBB3_8:                                # %for.inc
# |                                         #   in Loop: Header=BB3_2 Depth=1
# | 	end_block                               # label17:
# | 	local.get	1
# | 	i32.const	1
# | 	i32.add 
# | 	local.set	1
# | 	br      	0                               # 0: up to label16
# | .LBB3_9:                                # %try.cont
# | 	end_loop
# | 	end_try                                 # label15:
# | 	return
# | 	end_function
# | .Lfunc_end3:
# |                                         # -- End function
# | 	.section	.text.block_try_markers,"",@
# | 	.globl	block_try_markers               # -- Begin function block_try_markers
# | 	.type	block_try_markers, at function
# | block_try_markers:                      # @block_try_markers
# | .Lfunc_begin4:
# | 	.functype	block_try_markers () -> ()
# | 	.local  	i32
# | # %bb.0:                                # %bb0
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	block   	
# | 	i32.const	0
# | 	br_if   	0                               # 0: down to label21
# | # %bb.1:                                # %bb1
# | 	try     	
# | 	block   	
# | 	i32.const	0
# | 	br_if   	0                               # 0: down to label23
# | # %bb.2:                                # %bb3
# | .Ltmp30:                                # EH_LABEL
# | 	call	foo
# | .Ltmp31:                                # EH_LABEL
# | 	br      	1                               # 1: down to label22
# | .LBB4_3:                                # %bb4
# | 	end_block                               # label23:
# | .Ltmp28:                                # EH_LABEL
# | 	call	bar
# | .Ltmp29:                                # EH_LABEL
# | .LBB4_4:                                # %catch.start
# | .Ltmp32:                                # EH_LABEL
# | 	catch   	__cpp_exception                 # catch22:
# | 	drop
# | 	local.get	0
# | 	global.set	__stack_pointer
# | .LBB4_5:                                # %try.cont
# | 	end_try                                 # label22:
# | 	end_block                               # label21:
# | 	return
# | 	end_function
# | .Lfunc_end4:
# |                                         # -- End function
# | 	.section	.text.loop_try_markers,"",@
# | 	.globl	loop_try_markers                # -- Begin function loop_try_markers
# | 	.type	loop_try_markers, at function
# | loop_try_markers:                       # @loop_try_markers
# | .Lfunc_begin5:
# | 	.functype	loop_try_markers (i32) -> ()
# | 	.local  	i32
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	local.set	1
# | 	local.get	0
# | 	i32.const	0
# | 	i32.store	0
# | .LBB5_1:                                # %loop
# |                                         # =>This Inner Loop Header: Depth=1
# | 	loop    	                                # label24:
# | 	local.get	0
# | 	i32.const	1
# | 	i32.store	0
# | 	try     	
# | .Ltmp33:                                # EH_LABEL
# | 	call	foo
# | .Ltmp34:                                # EH_LABEL
# | 	br      	1                               # 1: up to label24
# | .LBB5_2:                                # %catch.start
# |                                         #   in Loop: Header=BB5_1 Depth=1
# | .Ltmp35:                                # EH_LABEL
# | 	catch   	__cpp_exception                 # catch25:
# | 	drop
# | 	local.get	1
# | 	global.set	__stack_pointer
# | 	br      	1                               # 1: up to label24
# | .LBB5_3:
# | 	end_try                                 # label25:
# | 	end_loop
# | 	end_function
# | .Lfunc_end5:
# |                                         # -- End function
# | 	.section	.text.unwind_mismatches_0,"",@
# | 	.globl	unwind_mismatches_0             # -- Begin function unwind_mismatches_0
# | 	.type	unwind_mismatches_0, at function
# | unwind_mismatches_0:                    # @unwind_mismatches_0
# | .Lfunc_begin6:
# | 	.functype	unwind_mismatches_0 () -> ()
# | 	.local  	i32
# | # %bb.0:                                # %bb0
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	block   	
# | 	try     	
# | .Ltmp36:                                # EH_LABEL
# | 	call	foo
# | .Ltmp37:                                # EH_LABEL
# | .LBB6_1:                                # %catch.start0
# | .Ltmp38:                                # EH_LABEL
# | 	catch   	__cpp_exception                 # catch27:
# | 	drop
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	br      	1                               # 1: down to label26
# | .LBB6_2:                                # %bb1
# | 	end_try                                 # label27:
# | 	try     	
# | .Ltmp39:                                # EH_LABEL
# | 	call	bar
# | .Ltmp40:                                # EH_LABEL
# | .LBB6_3:                                # %catch.start1
# | .Ltmp41:                                # EH_LABEL
# | 	catch   	__cpp_exception                 # catch28:
# | 	drop
# | 	local.get	0
# | 	global.set	__stack_pointer
# | .LBB6_4:                                # %try.cont
# | 	end_try                                 # label28:
# | 	end_block                               # label26:
# | 	return
# | 	end_function
# | .Lfunc_end6:
# |                                         # -- End function
# | 	.section	.text.unwind_mismatches_1,"",@
# | 	.globl	unwind_mismatches_1             # -- Begin function unwind_mismatches_1
# | 	.type	unwind_mismatches_1, at function
# | unwind_mismatches_1:                    # @unwind_mismatches_1
# | .Lfunc_begin7:
# | 	.functype	unwind_mismatches_1 () -> ()
# | 	.local  	i32
# | # %bb.0:                                # %bb0
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	try     	
# | .Ltmp42:                                # EH_LABEL
# | 	call	foo
# | .Ltmp43:                                # EH_LABEL
# | .LBB7_1:                                # %catch.start0
# | .Ltmp44:                                # EH_LABEL
# | 	catch   	__cpp_exception                 # catch29:
# | 	drop
# | 	local.get	0
# | 	global.set	__stack_pointer
# | # %bb.2:                                # %try.cont
# | 	return
# | .LBB7_3:                                # %bb1
# | 	end_try                                 # label29:
# | 	call	bar
# | 	call	baz
# | 	call	nothrow
# | 	return
# | 	end_function
# | .Lfunc_end7:
# |                                         # -- End function
# | 	.section	.text.unwind_mismatches_2,"",@
# | 	.globl	unwind_mismatches_2             # -- Begin function unwind_mismatches_2
# | 	.type	unwind_mismatches_2, at function
# | unwind_mismatches_2:                    # @unwind_mismatches_2
# | .Lfunc_begin8:
# | 	.functype	unwind_mismatches_2 () -> ()
# | 	.local  	i32
# | # %bb.0:                                # %bb0
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	block   	
# | 	try     	
# | .Ltmp45:                                # EH_LABEL
# | 	call	foo
# | .Ltmp46:                                # EH_LABEL
# | .LBB8_1:                                # %catch.start0
# | .Ltmp47:                                # EH_LABEL
# | 	catch   	__cpp_exception                 # catch31:
# | 	drop
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	br      	1                               # 1: down to label30
# | .LBB8_2:                                # %bb1
# | 	end_try                                 # label31:
# | 	call	foo
# | 	try     	
# | .Ltmp48:                                # EH_LABEL
# | 	call	bar
# | .Ltmp49:                                # EH_LABEL
# | .LBB8_3:                                # %catch.start1
# | .Ltmp50:                                # EH_LABEL
# | 	catch   	__cpp_exception                 # catch32:
# | 	drop
# | 	local.get	0
# | 	global.set	__stack_pointer
# | .LBB8_4:                                # %try.cont
# | 	end_try                                 # label32:
# | 	end_block                               # label30:
# | 	return
# | 	end_function
# | .Lfunc_end8:
# |                                         # -- End function
# | 	.section	.text.unwind_mismatches_3,"",@
# | 	.globl	unwind_mismatches_3             # -- Begin function unwind_mismatches_3
# | 	.type	unwind_mismatches_3, at function
# | unwind_mismatches_3:                    # @unwind_mismatches_3
# | .Lfunc_begin9:
# | 	.functype	unwind_mismatches_3 () -> (i32)
# | 	.local  	i32
# | # %bb.0:                                # %bb0
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	try     	
# | .Ltmp51:                                # EH_LABEL
# | 	call	foo
# | .Ltmp52:                                # EH_LABEL
# | .LBB9_1:                                # %catch.start0
# | .Ltmp53:                                # EH_LABEL
# | 	catch   	__cpp_exception                 # catch33:
# | 	drop
# | 	local.get	0
# | 	global.set	__stack_pointer
# | # %bb.2:                                # %try.cont
# | 	i32.const	0
# | 	return
# | .LBB9_3:                                # %bb1
# | 	end_try                                 # label33:
# | 	i32.const	5
# | 	call	qux
# | 	return
# | 	end_function
# | .Lfunc_end9:
# |                                         # -- End function
# | 	.section	.text.unwind_mismatches_4,"",@
# | 	.globl	unwind_mismatches_4             # -- Begin function unwind_mismatches_4
# | 	.type	unwind_mismatches_4, at function
# | unwind_mismatches_4:                    # @unwind_mismatches_4
# | .Lfunc_begin10:
# | 	.functype	unwind_mismatches_4 () -> ()
# | 	.local  	i32, i32
# | # %bb.0:                                # %bb0
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	block   	
# | 	try     	
# | .Ltmp54:                                # EH_LABEL
# | 	call	foo
# | .Ltmp55:                                # EH_LABEL
# | .LBB10_1:                               # %catch.start0
# | .Ltmp56:                                # EH_LABEL
# | 	catch   	__cpp_exception                 # catch35:
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	call	__cxa_end_catch
# | 	br      	1                               # 1: down to label34
# | .LBB10_2:                               # %bb1
# | 	end_try                                 # label35:
# | 	try     	
# | .Ltmp57:                                # EH_LABEL
# | 	call	bar
# | .Ltmp58:                                # EH_LABEL
# | .LBB10_3:                               # %catch.start1
# | .Ltmp59:                                # EH_LABEL
# | 	catch   	__cpp_exception                 # catch36:
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	call	__cxa_end_catch
# | .LBB10_4:                               # %try.cont
# | 	end_try                                 # label36:
# | 	end_block                               # label34:
# | 	return
# | 	end_function
# | .Lfunc_end10:
# |                                         # -- End function
# | 	.section	.text.unwind_mismatches_5,"",@
# | 	.globl	unwind_mismatches_5             # -- Begin function unwind_mismatches_5
# | 	.type	unwind_mismatches_5, at function
# | unwind_mismatches_5:                    # @unwind_mismatches_5
# | .Lfunc_begin11:
# | 	.functype	unwind_mismatches_5 () -> ()
# | 	.local  	i32, i32
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	local.set	0
# | .Ltmp60:                                # EH_LABEL
# | 	try     	
# | 	try     	
# | 	call	baz
# | 	local.set	1
# | # %bb.1:
# | 	delegate 	 1                      # label/catch38: to caller
# | .LBB11_2:
# | 	local.get	1
# | 	call	quux
# | .Ltmp61:                                # EH_LABEL
# | .LBB11_3:                               # %ehcleanup
# | .Ltmp62:                                # EH_LABEL
# | 	catch_all                               # catch37:
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	rethrow 	0                               # to caller
# | .LBB11_4:                               # %invoke.cont
# | 	end_try                                 # label37:
# | 	unreachable
# | 	end_function
# | .Lfunc_end11:
# |                                         # -- End function
# | 	.section	.text.unwind_mismatches_with_loop,"",@
# | 	.globl	unwind_mismatches_with_loop     # -- Begin function unwind_mismatches_with_loop
# | 	.type	unwind_mismatches_with_loop, at function
# | unwind_mismatches_with_loop:            # @unwind_mismatches_with_loop
# | .Lfunc_begin12:
# | 	.functype	unwind_mismatches_with_loop () -> ()
# | 	.local  	i32
# | # %bb.0:                                # %bb0
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	try     	
# | 	block   	
# | 	block   	
# | 	try     	
# | 	try     	
# | .Ltmp63:                                # EH_LABEL
# | 	call	foo
# | .Ltmp64:                                # EH_LABEL
# | 	br      	2                               # 2: down to label41
# | .LBB12_1:                               # %catch.start0
# | .Ltmp65:                                # EH_LABEL
# | 	catch   	__cpp_exception                 # catch43:
# | 	drop
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	br      	3                               # 3: down to label40
# | .LBB12_2:                               # %bb1
# | 	end_try                                 # label43:
# | # %bb.3:
# | 	delegate 	 3                      # label/catch42: to caller
# | .LBB12_4:
# | 	end_block                               # label41:
# | .Ltmp66:                                # EH_LABEL
# | 	call	bar
# | .Ltmp67:                                # EH_LABEL
# | .LBB12_5:                               # %bb2
# |                                         # =>This Inner Loop Header: Depth=1
# | 	end_block                               # label40:
# | 	loop    	                                # label44:
# | .Ltmp68:                                # EH_LABEL
# | 	call	foo
# | .Ltmp69:                                # EH_LABEL
# | 	br      	0                               # 0: up to label44
# | .LBB12_6:                               # %catch.start1
# | 	end_loop
# | .Ltmp70:                                # EH_LABEL
# | 	catch   	__cpp_exception                 # catch39:
# | 	drop
# | 	local.get	0
# | 	global.set	__stack_pointer
# | # %bb.7:                                # %try.cont
# | 	return
# | .LBB12_8:
# | 	end_try                                 # label39:
# | 	end_function
# | .Lfunc_end12:
# |                                         # -- End function
# | 	.section	.text.unstackify_when_fixing_unwind_mismatch,"",@
# | 	.globl	unstackify_when_fixing_unwind_mismatch # -- Begin function unstackify_when_fixing_unwind_mismatch
# | 	.type	unstackify_when_fixing_unwind_mismatch, at function
# | unstackify_when_fixing_unwind_mismatch: # @unstackify_when_fixing_unwind_mismatch
# | .Lfunc_begin13:
# | 	.functype	unstackify_when_fixing_unwind_mismatch (i32) -> ()
# | 	.local  	i32
# | # %bb.0:                                # %bb0
# | 	global.get	__stack_pointer
# | 	local.set	1
# | 	try     	
# | .Ltmp71:                                # EH_LABEL
# | 	call	foo
# | .Ltmp72:                                # EH_LABEL
# | .LBB13_1:                               # %catch.start0
# | .Ltmp73:                                # EH_LABEL
# | 	catch   	__cpp_exception                 # catch45:
# | 	drop
# | 	local.get	1
# | 	global.set	__stack_pointer
# | # %bb.2:                                # %try.cont
# | 	return
# | .LBB13_3:                               # %bb1
# | 	end_try                                 # label45:
# | 	local.get	0
# | 	i32.const	4
# | 	i32.add 
# | 	local.tee	0
# | 	local.get	0
# | 	i32.load	0
# | 	call	baz
# | 	i32.add 
# | 	i32.store	0
# | 	return
# | 	end_function
# | .Lfunc_end13:
# |                                         # -- End function
# | 	.section	.text.cfg_sort_order,"",@
# | 	.globl	cfg_sort_order                  # -- Begin function cfg_sort_order
# | 	.type	cfg_sort_order, at function
# | cfg_sort_order:                         # @cfg_sort_order
# | .Lfunc_begin14:
# | 	.functype	cfg_sort_order (i32) -> ()
# | 	.local  	i32
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	local.set	1
# | 	block   	
# | 	local.get	0
# | 	i32.eqz
# | 	br_if   	0                               # 0: down to label46
# | # %bb.1:                                # %if.then
# | 	try     	
# | .Ltmp74:                                # EH_LABEL
# | 	call	foo
# | .Ltmp75:                                # EH_LABEL
# | .LBB14_2:                               # %catch.start
# | .Ltmp76:                                # EH_LABEL
# | 	catch   	__cpp_exception                 # catch47:
# | 	local.set	0
# | 	local.get	1
# | 	global.set	__stack_pointer
# | 	local.get	0
# | 	call	__cxa_begin_catch
# | 	drop
# | 	call	__cxa_end_catch
# | 	br      	1                               # 1: down to label46
# | .LBB14_3:                               # %cont
# | 	end_try                                 # label47:
# | 	call	foo
# | .LBB14_4:                               # %if.end
# | 	end_block                               # label46:
# | 	return
# | 	end_function
# | .Lfunc_end14:
# |                                         # -- End function
# | 	.section	.text.mem_intrinsics,"",@
# | 	.globl	mem_intrinsics                  # -- Begin function mem_intrinsics
# | 	.type	mem_intrinsics, at function
# | mem_intrinsics:                         # @mem_intrinsics
# | .Lfunc_begin15:
# | 	.functype	mem_intrinsics (i32, i32) -> ()
# | 	.local  	i32
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	i32.const	16
# | 	i32.sub 
# | 	local.tee	2
# | 	global.set	__stack_pointer
# | 	try     	
# | .Ltmp77:                                # EH_LABEL
# | 	call	foo
# | .Ltmp78:                                # EH_LABEL
# | .LBB15_1:                               # %ehcleanup
# | .Ltmp79:                                # EH_LABEL
# | 	catch_all                               # catch48:
# | 	local.get	2
# | 	global.set	__stack_pointer
# | 	local.get	2
# | 	i32.const	15
# | 	i32.add 
# | 	call	_ZN6ObjectD2Ev
# | 	drop
# | 	rethrow 	0                               # to caller
# | .LBB15_2:                               # %invoke.cont
# | 	end_try                                 # label48:
# | 	local.get	0
# | 	local.get	1
# | 	i32.const	100
# | 	memory.copy	0, 0
# | 	local.get	0
# | 	local.get	1
# | 	i32.const	100
# | 	memory.copy	0, 0
# | 	local.get	0
# | 	i32.const	0
# | 	i32.const	100
# | 	memory.fill	0
# | 	local.get	2
# | 	i32.const	15
# | 	i32.add 
# | 	call	_ZN6ObjectD2Ev
# | 	drop
# | 	local.get	2
# | 	i32.const	16
# | 	i32.add 
# | 	global.set	__stack_pointer
# | 	return
# | 	end_function
# | .Lfunc_end15:
# |                                         # -- End function
# | 	.section	.text.try_marker_with_stackified_input,"",@
# | 	.globl	try_marker_with_stackified_input # -- Begin function try_marker_with_stackified_input
# | 	.type	try_marker_with_stackified_input, at function
# | try_marker_with_stackified_input:       # @try_marker_with_stackified_input
# | .Lfunc_begin16:
# | 	.functype	try_marker_with_stackified_input () -> ()
# | 	.local  	i32
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	local.set	0
# | .Ltmp80:                                # EH_LABEL
# | 	try     	
# | 	call	nothrow_i32
# | 	call	fun
# | .Ltmp81:                                # EH_LABEL
# | .LBB16_1:                               # %terminate
# | .Ltmp82:                                # EH_LABEL
# | 	catch_all                               # catch49:
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	call	_ZSt9terminatev
# | 	unreachable
# | .LBB16_2:                               # %invoke.cont
# | 	end_try                                 # label49:
# | 	return
# | 	end_function
# | .Lfunc_end16:
# |                                         # -- End function
# | 	.section	.text.loop_exception_region,"",@
# | 	.globl	loop_exception_region           # -- Begin function loop_exception_region
# | 	.type	loop_exception_region, at function
# | loop_exception_region:                  # @loop_exception_region
# | .Lfunc_begin17:
# | 	.functype	loop_exception_region () -> ()
# | 	.local  	i32, i32, i32, i32
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	i32.const	16
# | 	i32.sub 
# | 	local.tee	0
# | 	global.set	__stack_pointer
# | 	i32.const	0
# | 	local.set	1
# | .LBB17_1:                               # %for.cond
# |                                         # =>This Inner Loop Header: Depth=1
# | 	loop    	                                # label50:
# | 	block   	
# | 	block   	
# | 	local.get	1
# | 	i32.const	8
# | 	i32.gt_s
# | 	br_if   	0                               # 0: down to label52
# | # %bb.2:                                # %for.body
# |                                         #   in Loop: Header=BB17_1 Depth=1
# | 	try     	
# | .Ltmp83:                                # EH_LABEL
# | 	local.get	1
# | 	call	quux
# | .Ltmp84:                                # EH_LABEL
# | 	br      	2                               # 2: down to label51
# | .LBB17_3:                               # %catch.start
# |                                         #   in Loop: Header=BB17_1 Depth=1
# | .Ltmp85:                                # EH_LABEL
# | 	catch   	__cpp_exception                 # catch53:
# | 	local.set	2
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table17
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	0
# | 	i32.store	__wasm_lpad_context
# | 	local.get	2
# | 	call	_Unwind_CallPersonality
# | 	drop
# | 	block   	
# | 	block   	
# | 	i32.const	8
# | 	i32.load	__wasm_lpad_context
# | 	i32.const	1
# | 	i32.ne  
# | 	br_if   	0                               # 0: down to label55
# | # %bb.4:                                # %catch
# |                                         #   in Loop: Header=BB17_1 Depth=1
# | 	local.get	0
# | 	i32.const	12
# | 	i32.add 
# | 	local.get	2
# | 	call	__cxa_get_exception_ptr
# | 	call	_ZN7MyClassC2ERKS_
# | 	local.set	3
# | 	local.get	2
# | 	call	__cxa_begin_catch
# | 	drop
# | .Ltmp86:                                # EH_LABEL
# | 	try     	
# | 	local.get	3
# | 	i32.load	0
# | 	call	quux
# | .Ltmp87:                                # EH_LABEL
# | 	br      	2                               # 2: down to label54
# | .LBB17_5:                               # %ehcleanup
# | .Ltmp88:                                # EH_LABEL
# | 	catch_all                               # catch56:
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	local.get	3
# | 	call	_ZN7MyClassD2Ev
# | 	drop
# | 	try     	
# | .Ltmp89:                                # EH_LABEL
# | 	call	__cxa_end_catch
# | .Ltmp90:                                # EH_LABEL
# | .LBB17_6:                               # %terminate7
# | .Ltmp91:                                # EH_LABEL
# | 	catch_all                               # catch57:
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	call	_ZSt9terminatev
# | 	unreachable
# | .LBB17_7:                               # %invoke.cont6
# | 	end_try                                 # label57:
# | 	rethrow 	0                               # to caller
# | .LBB17_8:                               # %rethrow
# | 	end_try                                 # label56:
# | 	end_block                               # label55:
# | 	rethrow 	1                               # to caller
# | .LBB17_9:                               # %invoke.cont2
# |                                         #   in Loop: Header=BB17_1 Depth=1
# | 	end_block                               # label54:
# | 	local.get	3
# | 	call	_ZN7MyClassD2Ev
# | 	drop
# | 	call	__cxa_end_catch
# | 	br      	2                               # 2: down to label51
# | .LBB17_10:                              # %for.end
# | 	end_try                                 # label53:
# | 	end_block                               # label52:
# | 	local.get	0
# | 	i32.const	16
# | 	i32.add 
# | 	global.set	__stack_pointer
# | 	return
# | .LBB17_11:                              # %for.inc
# |                                         #   in Loop: Header=BB17_1 Depth=1
# | 	end_block                               # label51:
# | 	local.get	1
# | 	i32.const	1
# | 	i32.add 
# | 	local.set	1
# | 	br      	0                               # 0: up to label50
# | .LBB17_12:
# | 	end_loop
# | 	end_function
# | .Lfunc_end17:
# | 	.section	.rodata.gcc_except_table,"",@
# | 	.p2align	2, 0x0
# | GCC_except_table17:
# | .Lexception2:
# | 	.int8	255                             # @LPStart Encoding = omit
# | 	.int8	0                               # @TType Encoding = absptr
# | 	.uleb128 .Lttbase2-.Lttbaseref2
# | .Lttbaseref2:
# | 	.int8	1                               # Call site Encoding = uleb128
# | 	.uleb128 .Lcst_end2-.Lcst_begin2
# | .Lcst_begin2:
# | 	.int8	0                               # >> Call Site 0 <<
# |                                         #   On exception at call site 0
# | 	.int8	1                               #   Action: 1
# | .Lcst_end2:
# | 	.int8	1                               # >> Action Record 1 <<
# |                                         #   Catch TypeInfo 1
# | 	.int8	0                               #   No further actions
# | 	.p2align	2, 0x0
# |                                         # >> Catch TypeInfos <<
# | 	.int32	_ZTI7MyClass                    # TypeInfo 1
# | .Lttbase2:
# | 	.p2align	2, 0x0
# | .LGCC_except_table_end2:
# | 	.size	GCC_except_table17, .LGCC_except_table_end2-GCC_except_table17
# |                                         # -- End function
# | 	.section	.text.remove_unnecessary_instrs,"",@
# | 	.globl	remove_unnecessary_instrs       # -- Begin function remove_unnecessary_instrs
# | 	.type	remove_unnecessary_instrs, at function
# | remove_unnecessary_instrs:              # @remove_unnecessary_instrs
# | .Lfunc_begin18:
# | 	.functype	remove_unnecessary_instrs (i32) -> ()
# | 	.local  	i32, i32
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	local.set	1
# | 	try     	
# | .Ltmp92:                                # EH_LABEL
# | 	call	foo
# | .Ltmp93:                                # EH_LABEL
# | # %bb.1:                                # %for.body.preheader
# | 	i32.const	0
# | 	local.set	2
# | .LBB18_2:                               # %for.body
# |                                         # =>This Inner Loop Header: Depth=1
# | 	loop    	                                # label59:
# | .Ltmp94:                                # EH_LABEL
# | 	call	foo
# | .Ltmp95:                                # EH_LABEL
# | # %bb.3:                                # %for.end
# |                                         #   in Loop: Header=BB18_2 Depth=1
# | 	local.get	2
# | 	i32.const	1
# | 	i32.add 
# | 	local.tee	2
# | 	local.get	0
# | 	i32.ne  
# | 	br_if   	0                               # 0: up to label59
# | .LBB18_4:                               # %catch.start
# | 	end_loop
# | .Ltmp96:                                # EH_LABEL
# | 	catch   	__cpp_exception                 # catch58:
# | 	local.set	2
# | 	local.get	1
# | 	global.set	__stack_pointer
# | 	local.get	2
# | 	call	__cxa_begin_catch
# | 	drop
# | 	call	__cxa_end_catch
# | .LBB18_5:                               # %try.cont
# | 	end_try                                 # label58:
# | 	return
# | 	end_function
# | .Lfunc_end18:
# |                                         # -- End function
# | 	.section	.text.remove_unnecessary_br,"",@
# | 	.globl	remove_unnecessary_br           # -- Begin function remove_unnecessary_br
# | 	.type	remove_unnecessary_br, at function
# | remove_unnecessary_br:                  # @remove_unnecessary_br
# | .Lfunc_begin19:
# | 	.functype	remove_unnecessary_br () -> ()
# | 	.local  	i32, i32
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	try     	
# | .Ltmp97:                                # EH_LABEL
# | 	call	foo
# | .Ltmp98:                                # EH_LABEL
# | # %bb.1:                                # %invoke.cont
# | 	try     	
# | .Ltmp99:                                # EH_LABEL
# | 	call	foo
# | .Ltmp100:                               # EH_LABEL
# | .LBB19_2:                               # %catch.start
# | .Ltmp101:                               # EH_LABEL
# | 	catch   	__cpp_exception                 # catch61:
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | .Ltmp102:                               # EH_LABEL
# | 	call	__cxa_end_catch
# | .Ltmp103:                               # EH_LABEL
# | # %bb.3:                                # %invoke.cont2
# | .LBB19_4:                               # %catch.start4
# | 	end_try                                 # label61:
# | .Ltmp104:                               # EH_LABEL
# | 	catch   	__cpp_exception                 # catch60:
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	call	__cxa_end_catch
# | .LBB19_5:                               # %try.cont8
# | 	end_try                                 # label60:
# | 	return
# | 	end_function
# | .Lfunc_end19:
# |                                         # -- End function
# | 	.section	.text.loop_contains_exception,"",@
# | 	.globl	loop_contains_exception         # -- Begin function loop_contains_exception
# | 	.type	loop_contains_exception, at function
# | loop_contains_exception:                # @loop_contains_exception
# | .Lfunc_begin20:
# | 	.functype	loop_contains_exception (i32) -> ()
# | 	.local  	i32, i32
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	local.set	1
# | .LBB20_1:                               # %while.cond
# |                                         # =>This Inner Loop Header: Depth=1
# | 	block   	
# | 	loop    	                                # label63:
# | 	local.get	0
# | 	i32.eqz
# | 	br_if   	1                               # 1: down to label62
# | # %bb.2:                                # %while.body
# |                                         #   in Loop: Header=BB20_1 Depth=1
# | .Ltmp105:                               # EH_LABEL
# | 	local.get	0
# | 	i32.const	-1
# | 	i32.add 
# | 	local.set	0
# | 	try     	
# | 	call	foo
# | .Ltmp106:                               # EH_LABEL
# | .LBB20_3:                               # %catch.start
# |                                         #   in Loop: Header=BB20_1 Depth=1
# | .Ltmp107:                               # EH_LABEL
# | 	catch   	__cpp_exception                 # catch64:
# | 	local.set	2
# | 	local.get	1
# | 	global.set	__stack_pointer
# | 	local.get	2
# | 	call	__cxa_begin_catch
# | 	drop
# | 	try     	
# | .Ltmp108:                               # EH_LABEL
# | 	call	__cxa_end_catch
# | .Ltmp109:                               # EH_LABEL
# | .LBB20_4:                               # %ehcleanup
# | .Ltmp110:                               # EH_LABEL
# | 	catch_all                               # catch65:
# | 	local.get	1
# | 	global.set	__stack_pointer
# | 	call	_ZSt9terminatev
# | 	unreachable
# | .LBB20_5:                               # %invoke.cont
# |                                         #   in Loop: Header=BB20_1 Depth=1
# | 	end_try                                 # label65:
# | 	br      	1                               # 1: up to label63
# | .LBB20_6:                               # %while.end
# | 	end_try                                 # label64:
# | 	end_loop
# | 	end_block                               # label62:
# | 	return
# | 	end_function
# | .Lfunc_end20:
# |                                         # -- End function
# | 	.section	.text.fix_function_end_return_type_with_try_catch,"",@
# | 	.globl	fix_function_end_return_type_with_try_catch # -- Begin function fix_function_end_return_type_with_try_catch
# | 	.type	fix_function_end_return_type_with_try_catch, at function
# | fix_function_end_return_type_with_try_catch: # @fix_function_end_return_type_with_try_catch
# | .Lfunc_begin21:
# | 	.functype	fix_function_end_return_type_with_try_catch (i32) -> (i32)
# | 	.local  	i32, i32
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	i32.const	16
# | 	i32.sub 
# | 	local.tee	1
# | 	global.set	__stack_pointer
# | 	local.get	0
# | 	i32.const	2
# | 	i32.div_s
# | 	local.set	2
# | 	i32.const	0
# | 	local.set	0
# | .LBB21_1:                               # %for.cond
# |                                         # =>This Inner Loop Header: Depth=1
# | 	block   	
# | 	loop    	                                # label67:
# | 	block   	
# | 	local.get	2
# | 	local.get	0
# | 	i32.ne  
# | 	br_if   	0                               # 0: down to label68
# | # %bb.2:                                # %if.then
# | 	try     	
# | .Ltmp111:                               # EH_LABEL
# | 	call	baz
# | 	local.set	0
# | .Ltmp112:                               # EH_LABEL
# | 	br      	3                               # 3: down to label66
# | .LBB21_3:                               # %ehcleanup
# | .Ltmp113:                               # EH_LABEL
# | 	catch_all                               # catch69:
# | 	local.get	1
# | 	global.set	__stack_pointer
# | 	local.get	1
# | 	i32.const	15
# | 	i32.add 
# | 	call	_ZN6ObjectD2Ev
# | 	drop
# | 	rethrow 	0                               # to caller
# | .LBB21_4:                               # %for.inc
# |                                         #   in Loop: Header=BB21_1 Depth=1
# | 	end_try                                 # label69:
# | 	end_block                               # label68:
# | 	local.get	0
# | 	i32.const	1
# | 	i32.add 
# | 	local.set	0
# | 	br      	0                               # 0: up to label67
# | .LBB21_5:                               # %invoke.cont
# | 	end_loop
# | 	end_block                               # label66:
# | 	local.get	1
# | 	i32.const	15
# | 	i32.add 
# | 	call	_ZN6ObjectD2Ev
# | 	drop
# | 	local.get	1
# | 	i32.const	16
# | 	i32.add 
# | 	global.set	__stack_pointer
# | 	local.get	0
# | 	return
# | 	end_function
# | .Lfunc_end21:
# |                                         # -- End function
# | 	.section	.text.branch_remapping_after_fixing_unwind_mismatches_0,"",@
# | 	.globl	branch_remapping_after_fixing_unwind_mismatches_0 # -- Begin function branch_remapping_after_fixing_unwind_mismatches_0
# | 	.type	branch_remapping_after_fixing_unwind_mismatches_0, at function
# | branch_remapping_after_fixing_unwind_mismatches_0: # @branch_remapping_after_fixing_unwind_mismatches_0
# | .Lfunc_begin22:
# | 	.functype	branch_remapping_after_fixing_unwind_mismatches_0 (i32) -> ()
# | 	.local  	i32
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	local.set	1
# | 	block   	
# | 	block   	
# | 	block   	
# | 	local.get	0
# | 	i32.const	1
# | 	i32.and 
# | 	i32.eqz
# | 	br_if   	0                               # 0: down to label72
# | # %bb.1:                                # %bb0
# | 	try     	
# | .Ltmp114:                               # EH_LABEL
# | 	call	foo
# | .Ltmp115:                               # EH_LABEL
# | 	br      	2                               # 2: down to label71
# | .LBB22_2:                               # %catch.start0
# | .Ltmp116:                               # EH_LABEL
# | 	catch   	__cpp_exception                 # catch73:
# | 	drop
# | 	local.get	1
# | 	global.set	__stack_pointer
# | 	br      	3                               # 3: down to label70
# | .LBB22_3:                               # %dest
# | 	end_try                                 # label73:
# | 	end_block                               # label72:
# | 	return
# | .LBB22_4:                               # %bb1
# | 	end_block                               # label71:
# | 	try     	
# | .Ltmp117:                               # EH_LABEL
# | 	call	bar
# | .Ltmp118:                               # EH_LABEL
# | .LBB22_5:                               # %catch.start1
# | .Ltmp119:                               # EH_LABEL
# | 	catch   	__cpp_exception                 # catch74:
# | 	drop
# | 	local.get	1
# | 	global.set	__stack_pointer
# | .LBB22_6:                               # %try.cont
# | 	end_try                                 # label74:
# | 	end_block                               # label70:
# | 	return
# | 	end_function
# | .Lfunc_end22:
# |                                         # -- End function
# | 	.section	.text.branch_remapping_after_fixing_unwind_mismatches_1,"",@
# | 	.globl	branch_remapping_after_fixing_unwind_mismatches_1 # -- Begin function branch_remapping_after_fixing_unwind_mismatches_1
# | 	.type	branch_remapping_after_fixing_unwind_mismatches_1, at function
# | branch_remapping_after_fixing_unwind_mismatches_1: # @branch_remapping_after_fixing_unwind_mismatches_1
# | .Lfunc_begin23:
# | 	.functype	branch_remapping_after_fixing_unwind_mismatches_1 () -> ()
# | 	.local  	i32, i32
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	block   	
# | 	block   	
# | 	i32.const	0
# | 	br_if   	0                               # 0: down to label76
# | # %bb.1:                                # %if.then
# | .Ltmp126:                               # EH_LABEL
# | 	try     	
# | 	i32.const	0
# | 	i32.const	0
# | 	i32.const	0
# | 	call	__cxa_throw
# | .Ltmp127:                               # EH_LABEL
# | 	br      	2                               # 2: down to label75
# | .LBB23_2:                               # %catch.start
# | .Ltmp128:                               # EH_LABEL
# | 	catch   	__cpp_exception                 # catch77:
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table23
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	0
# | 	i32.store	__wasm_lpad_context
# | 	local.get	1
# | 	call	_Unwind_CallPersonality
# | 	drop
# | # %bb.3:                                # %catchret.dest
# | 	try     	
# | .Ltmp129:                               # EH_LABEL
# | 	call	foo
# | .Ltmp130:                               # EH_LABEL
# | # %bb.4:                                # %invoke.cont
# | .Ltmp131:                               # EH_LABEL
# | 	i32.const	0
# | 	i32.const	0
# | 	i32.const	0
# | 	call	__cxa_throw
# | .Ltmp132:                               # EH_LABEL
# | 	br      	3                               # 3: down to label75
# | .LBB23_5:                               # %catch.start5
# | .Ltmp133:                               # EH_LABEL
# | 	catch   	__cpp_exception                 # catch78:
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table23
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	1
# | 	i32.store	__wasm_lpad_context
# | 	local.get	1
# | 	call	_Unwind_CallPersonality
# | 	drop
# | 	unreachable
# | .LBB23_6:                               # %if.end12
# | 	end_try                                 # label78:
# | 	end_try                                 # label77:
# | 	end_block                               # label76:
# | 	try     	
# | 	try     	
# | .Ltmp120:                               # EH_LABEL
# | 	call	foo
# | .Ltmp121:                               # EH_LABEL
# | .LBB23_7:                               # %catch.start17
# | .Ltmp122:                               # EH_LABEL
# | 	catch   	__cpp_exception                 # catch80:
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table23
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	2
# | 	i32.store	__wasm_lpad_context
# | 	local.get	1
# | 	call	_Unwind_CallPersonality
# | 	drop
# | 	block   	
# | 	i32.const	0
# | 	br_if   	0                               # 0: down to label81
# | # %bb.8:                                # %catch20
# | 	br      	1                               # 1: down to label80
# | .LBB23_9:                               # %rethrow19
# | 	end_block                               # label81:
# | 	rethrow 	0                               # down to catch79
# | .LBB23_10:                              # %try.cont23
# | 	end_try                                 # label80:
# | .Ltmp123:                               # EH_LABEL
# | 	call	foo
# | .Ltmp124:                               # EH_LABEL
# | .LBB23_11:                              # %ehcleanup
# | .Ltmp125:                               # EH_LABEL
# | 	catch_all                               # catch79:
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	rethrow 	0                               # to caller
# | .LBB23_12:                              # %invoke.cont24
# | 	end_try                                 # label79:
# | 	return
# | .LBB23_13:                              # %unreachable.for.entry
# | 	end_block                               # label75:
# | 	unreachable
# | 	end_function
# | .Lfunc_end23:
# | 	.section	.rodata.gcc_except_table,"",@
# | 	.p2align	2, 0x0
# | GCC_except_table23:
# | .Lexception3:
# | 	.int8	255                             # @LPStart Encoding = omit
# | 	.int8	0                               # @TType Encoding = absptr
# | 	.uleb128 .Lttbase3-.Lttbaseref3
# | .Lttbaseref3:
# | 	.int8	1                               # Call site Encoding = uleb128
# | 	.uleb128 .Lcst_end3-.Lcst_begin3
# | .Lcst_begin3:
# | 	.int8	0                               # >> Call Site 0 <<
# |                                         #   On exception at call site 0
# | 	.int8	1                               #   Action: 1
# | 	.int8	1                               # >> Call Site 1 <<
# |                                         #   On exception at call site 1
# | 	.int8	1                               #   Action: 1
# | 	.int8	2                               # >> Call Site 2 <<
# |                                         #   On exception at call site 2
# | 	.int8	1                               #   Action: 1
# | .Lcst_end3:
# | 	.int8	1                               # >> Action Record 1 <<
# |                                         #   Catch TypeInfo 1
# | 	.int8	0                               #   No further actions
# | 	.p2align	2, 0x0
# |                                         # >> Catch TypeInfos <<
# | 	.int32	_ZTIi                           # TypeInfo 1
# | .Lttbase3:
# | 	.p2align	2, 0x0
# | .LGCC_except_table_end3:
# | 	.size	GCC_except_table23, .LGCC_except_table_end3-GCC_except_table23
# |                                         # -- End function
# | 	.section	.text.wasm_eh_func_info_regression_test,"",@
# | 	.globl	wasm_eh_func_info_regression_test # -- Begin function wasm_eh_func_info_regression_test
# | 	.type	wasm_eh_func_info_regression_test, at function
# | wasm_eh_func_info_regression_test:      # @wasm_eh_func_info_regression_test
# | .Lfunc_begin24:
# | 	.functype	wasm_eh_func_info_regression_test () -> ()
# | 	.local  	i32, i32
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	try     	
# | 	try     	
# | .Ltmp134:                               # EH_LABEL
# | 	call	foo
# | .Ltmp135:                               # EH_LABEL
# | .LBB24_1:                               # %catch.start
# | .Ltmp136:                               # EH_LABEL
# | 	catch   	__cpp_exception                 # catch83:
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table24
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	0
# | 	i32.store	__wasm_lpad_context
# | 	local.get	1
# | 	call	_Unwind_CallPersonality
# | 	drop
# | .Ltmp137:                               # EH_LABEL
# | 	try     	
# | 	try     	
# | 	i32.const	0
# | 	i32.const	0
# | 	i32.const	0
# | 	call	__cxa_throw
# | .Ltmp138:                               # EH_LABEL
# | .LBB24_2:                               # %catch.start3
# | .Ltmp139:                               # EH_LABEL
# | 	catch   	__cpp_exception                 # catch85:
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table24
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	1
# | 	i32.store	__wasm_lpad_context
# | 	local.get	1
# | 	call	_Unwind_CallPersonality
# | 	drop
# | # %bb.3:                                # %try.cont
# | .Ltmp140:                               # EH_LABEL
# | 	call	foo
# | .Ltmp141:                               # EH_LABEL
# | # %bb.4:                                # %invoke.cont8
# | .Ltmp142:                               # EH_LABEL
# | 	try     	
# | 	i32.const	0
# | 	i32.const	0
# | 	i32.const	0
# | 	call	__cxa_throw
# | .Ltmp143:                               # EH_LABEL
# | .LBB24_5:                               # %catch.start12
# | .Ltmp144:                               # EH_LABEL
# | 	catch   	__cpp_exception                 # catch86:
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table24
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	2
# | 	i32.store	__wasm_lpad_context
# | 	local.get	1
# | 	call	_Unwind_CallPersonality
# | 	drop
# | 	unreachable
# | .LBB24_6:                               # %unreachable
# | 	end_try                                 # label86:
# | 	end_try                                 # label85:
# | 	unreachable
# | .LBB24_7:                               # %ehcleanup
# | .Ltmp145:                               # EH_LABEL
# | 	catch_all                               # catch84:
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	rethrow 	0                               # down to catch82
# | .LBB24_8:                               # %ehcleanup22
# | 	end_try                                 # label84:
# | 	end_try                                 # label83:
# | .Ltmp146:                               # EH_LABEL
# | 	catch_all                               # catch82:
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	rethrow 	0                               # to caller
# | .LBB24_9:                               # %invoke.cont
# | 	end_try                                 # label82:
# | 	unreachable
# | 	end_function
# | .Lfunc_end24:
# | 	.section	.rodata.gcc_except_table,"",@
# | 	.p2align	2, 0x0
# | GCC_except_table24:
# | .Lexception4:
# | 	.int8	255                             # @LPStart Encoding = omit
# | 	.int8	0                               # @TType Encoding = absptr
# | 	.uleb128 .Lttbase4-.Lttbaseref4
# | .Lttbaseref4:
# | 	.int8	1                               # Call site Encoding = uleb128
# | 	.uleb128 .Lcst_end4-.Lcst_begin4
# | .Lcst_begin4:
# | 	.int8	0                               # >> Call Site 0 <<
# |                                         #   On exception at call site 0
# | 	.int8	1                               #   Action: 1
# | 	.int8	1                               # >> Call Site 1 <<
# |                                         #   On exception at call site 1
# | 	.int8	1                               #   Action: 1
# | 	.int8	2                               # >> Call Site 2 <<
# |                                         #   On exception at call site 2
# | 	.int8	1                               #   Action: 1
# | .Lcst_end4:
# | 	.int8	1                               # >> Action Record 1 <<
# |                                         #   Catch TypeInfo 1
# | 	.int8	0                               #   No further actions
# | 	.p2align	2, 0x0
# |                                         # >> Catch TypeInfos <<
# | 	.int32	_ZTIi                           # TypeInfo 1
# | .Lttbase4:
# | 	.p2align	2, 0x0
# | .LGCC_except_table_end4:
# | 	.size	GCC_except_table24, .LGCC_except_table_end4-GCC_except_table24
# |                                         # -- End function
# | 	.section	.text.exception_grouping_0,"",@
# | 	.globl	exception_grouping_0            # -- Begin function exception_grouping_0
# | 	.type	exception_grouping_0, at function
# | exception_grouping_0:                   # @exception_grouping_0
# | .Lfunc_begin25:
# | 	.functype	exception_grouping_0 () -> ()
# | 	.local  	i32, i32
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	i32.const	4
# | 	call	__cxa_allocate_exception
# | 	local.tee	1
# | 	i32.const	0
# | 	i32.store	0
# | .Ltmp147:                               # EH_LABEL
# | 	block   	
# | 	try     	
# | 	try     	
# | 	local.get	1
# | 	i32.const	_ZTIi
# | 	i32.const	0
# | 	call	__cxa_throw
# | .Ltmp148:                               # EH_LABEL
# | 	br      	2                               # 2: down to label87
# | .LBB25_1:                               # %catch.start
# | .Ltmp149:                               # EH_LABEL
# | 	catch   	__cpp_exception                 # catch89:
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table25
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	0
# | 	i32.store	__wasm_lpad_context
# | 	local.get	1
# | 	call	_Unwind_CallPersonality
# | 	drop
# | 	block   	
# | 	i32.const	8
# | 	i32.load	__wasm_lpad_context
# | 	i32.const	1
# | 	i32.ne  
# | 	br_if   	0                               # 0: down to label90
# | # %bb.2:                                # %catch
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	try     	
# | 	call	__cxa_end_catch
# | # %bb.3:
# | 	delegate 	 4                      # label/catch91: to caller
# | .LBB25_4:
# | 	br      	2                               # 2: down to label88
# | .LBB25_5:                               # %rethrow
# | 	end_block                               # label90:
# | 	rethrow 	0                               # down to catch88
# | .LBB25_6:                               # %catch.start2
# | 	end_try                                 # label89:
# | .Ltmp150:                               # EH_LABEL
# | 	catch   	__cpp_exception                 # catch88:
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table25
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	1
# | 	i32.store	__wasm_lpad_context
# | 	local.get	1
# | 	call	_Unwind_CallPersonality
# | 	drop
# | 	block   	
# | 	i32.const	8
# | 	i32.load	__wasm_lpad_context
# | 	i32.const	1
# | 	i32.ne  
# | 	br_if   	0                               # 0: down to label92
# | # %bb.7:                                # %catch5
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	call	__cxa_end_catch
# | 	br      	1                               # 1: down to label88
# | .LBB25_8:                               # %rethrow4
# | 	end_block                               # label92:
# | 	rethrow 	0                               # to caller
# | .LBB25_9:                               # %try.cont8
# | 	end_try                                 # label88:
# | 	return
# | .LBB25_10:                              # %unreachable.for.entry
# | 	end_block                               # label87:
# | 	unreachable
# | 	end_function
# | .Lfunc_end25:
# | 	.section	.rodata.gcc_except_table,"",@
# | 	.p2align	2, 0x0
# | GCC_except_table25:
# | .Lexception5:
# | 	.int8	255                             # @LPStart Encoding = omit
# | 	.int8	0                               # @TType Encoding = absptr
# | 	.uleb128 .Lttbase5-.Lttbaseref5
# | .Lttbaseref5:
# | 	.int8	1                               # Call site Encoding = uleb128
# | 	.uleb128 .Lcst_end5-.Lcst_begin5
# | .Lcst_begin5:
# | 	.int8	0                               # >> Call Site 0 <<
# |                                         #   On exception at call site 0
# | 	.int8	1                               #   Action: 1
# | 	.int8	1                               # >> Call Site 1 <<
# |                                         #   On exception at call site 1
# | 	.int8	1                               #   Action: 1
# | .Lcst_end5:
# | 	.int8	1                               # >> Action Record 1 <<
# |                                         #   Catch TypeInfo 1
# | 	.int8	0                               #   No further actions
# | 	.p2align	2, 0x0
# |                                         # >> Catch TypeInfos <<
# | 	.int32	_ZTIi                           # TypeInfo 1
# | .Lttbase5:
# | 	.p2align	2, 0x0
# | .LGCC_except_table_end5:
# | 	.size	GCC_except_table25, .LGCC_except_table_end5-GCC_except_table25
# |                                         # -- End function
# | 	.section	.text.exception_grouping_1,"",@
# | 	.globl	exception_grouping_1            # -- Begin function exception_grouping_1
# | 	.type	exception_grouping_1, at function
# | exception_grouping_1:                   # @exception_grouping_1
# | .Lfunc_begin26:
# | 	.functype	exception_grouping_1 () -> ()
# | 	.local  	i32, i32
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	try     	
# | 	try     	
# | 	try     	
# | .Ltmp151:                               # EH_LABEL
# | 	call	foo
# | .Ltmp152:                               # EH_LABEL
# | # %bb.1:                                # %invoke.cont
# | .Ltmp153:                               # EH_LABEL
# | 	call	foo
# | .Ltmp154:                               # EH_LABEL
# | # %bb.2:                                # %invoke.cont1
# | .Ltmp155:                               # EH_LABEL
# | 	call	foo
# | .Ltmp156:                               # EH_LABEL
# | .LBB26_3:                               # %catch.start
# | .Ltmp157:                               # EH_LABEL
# | 	catch   	__cpp_exception                 # catch95:
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table26
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	2
# | 	i32.store	__wasm_lpad_context
# | 	local.get	1
# | 	call	_Unwind_CallPersonality
# | 	drop
# | 	block   	
# | 	i32.const	8
# | 	i32.load	__wasm_lpad_context
# | 	i32.const	1
# | 	i32.ne  
# | 	br_if   	0                               # 0: down to label96
# | # %bb.4:                                # %catch
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	try     	
# | 	call	__cxa_end_catch
# | # %bb.5:
# | 	delegate 	 4                      # label/catch97: to caller
# | .LBB26_6:
# | 	br      	3                               # 3: down to label93
# | .LBB26_7:                               # %rethrow
# | 	end_block                               # label96:
# | 	rethrow 	0                               # down to catch94
# | .LBB26_8:                               # %catch.start4
# | 	end_try                                 # label95:
# | .Ltmp158:                               # EH_LABEL
# | 	catch   	__cpp_exception                 # catch94:
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table26
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	1
# | 	i32.store	__wasm_lpad_context
# | 	local.get	1
# | 	call	_Unwind_CallPersonality
# | 	drop
# | 	block   	
# | 	i32.const	8
# | 	i32.load	__wasm_lpad_context
# | 	i32.const	1
# | 	i32.ne  
# | 	br_if   	0                               # 0: down to label98
# | # %bb.9:                                # %catch7
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	try     	
# | 	call	__cxa_end_catch
# | # %bb.10:
# | 	delegate 	 3                      # label/catch99: to caller
# | .LBB26_11:
# | 	br      	2                               # 2: down to label93
# | .LBB26_12:                              # %rethrow6
# | 	end_block                               # label98:
# | 	rethrow 	0                               # down to catch93
# | .LBB26_13:                              # %catch.start12
# | 	end_try                                 # label94:
# | .Ltmp159:                               # EH_LABEL
# | 	catch   	__cpp_exception                 # catch93:
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table26
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	0
# | 	i32.store	__wasm_lpad_context
# | 	local.get	1
# | 	call	_Unwind_CallPersonality
# | 	drop
# | 	block   	
# | 	i32.const	8
# | 	i32.load	__wasm_lpad_context
# | 	i32.const	1
# | 	i32.ne  
# | 	br_if   	0                               # 0: down to label100
# | # %bb.14:                               # %catch15
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	call	__cxa_end_catch
# | 	br      	1                               # 1: down to label93
# | .LBB26_15:                              # %rethrow14
# | 	end_block                               # label100:
# | 	rethrow 	0                               # to caller
# | .LBB26_16:                              # %try.cont18
# | 	end_try                                 # label93:
# | 	return
# | 	end_function
# | .Lfunc_end26:
# | 	.section	.rodata.gcc_except_table,"",@
# | 	.p2align	2, 0x0
# | GCC_except_table26:
# | .Lexception6:
# | 	.int8	255                             # @LPStart Encoding = omit
# | 	.int8	0                               # @TType Encoding = absptr
# | 	.uleb128 .Lttbase6-.Lttbaseref6
# | .Lttbaseref6:
# | 	.int8	1                               # Call site Encoding = uleb128
# | 	.uleb128 .Lcst_end6-.Lcst_begin6
# | .Lcst_begin6:
# | 	.int8	0                               # >> Call Site 0 <<
# |                                         #   On exception at call site 0
# | 	.int8	1                               #   Action: 1
# | 	.int8	1                               # >> Call Site 1 <<
# |                                         #   On exception at call site 1
# | 	.int8	1                               #   Action: 1
# | 	.int8	2                               # >> Call Site 2 <<
# |                                         #   On exception at call site 2
# | 	.int8	1                               #   Action: 1
# | .Lcst_end6:
# | 	.int8	1                               # >> Action Record 1 <<
# |                                         #   Catch TypeInfo 1
# | 	.int8	0                               #   No further actions
# | 	.p2align	2, 0x0
# |                                         # >> Catch TypeInfos <<
# | 	.int32	_ZTIi                           # TypeInfo 1
# | .Lttbase6:
# | 	.p2align	2, 0x0
# | .LGCC_except_table_end6:
# | 	.size	GCC_except_table26, .LGCC_except_table_end6-GCC_except_table26
# |                                         # -- End function
# | 	.section	.text.exception_grouping_2,"",@
# | 	.globl	exception_grouping_2            # -- Begin function exception_grouping_2
# | 	.type	exception_grouping_2, at function
# | exception_grouping_2:                   # @exception_grouping_2
# | 	.functype	exception_grouping_2 () -> ()
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	drop
# | 	i32.const	4
# | 	call	__cxa_allocate_exception
# | 	drop
# | 	unreachable
# | 	end_function
# |                                         # -- End function
# | 	.no_dead_strip	__indirect_function_table
# | 	.size	_ZTIi, 4
# | 	.size	_ZTId, 4
# | 	.size	_ZTI7MyClass, 8
# | 	.size	__wasm_lpad_context, 12
# | 	.section	.custom_section.target_features,"",@
# | 	.int8	10
# | 	.int8	43
# | 	.int8	11
# | 	.ascii	"bulk-memory"
# | 	.int8	43
# | 	.int8	15
# | 	.ascii	"bulk-memory-opt"
# | 	.int8	43
# | 	.int8	22
# | 	.ascii	"call-indirect-overlong"
# | 	.int8	43
# | 	.int8	18
# | 	.ascii	"exception-handling"
# | 	.int8	43
# | 	.int8	10
# | 	.ascii	"multivalue"
# | 	.int8	43
# | 	.int8	15
# | 	.ascii	"mutable-globals"
# | 	.int8	43
# | 	.int8	19
# | 	.ascii	"nontrapping-fptoint"
# | 	.int8	43
# | 	.int8	15
# | 	.ascii	"reference-types"
# | 	.int8	43
# | 	.int8	8
# | 	.ascii	"sign-ext"
# | 	.int8	45
# | 	.int8	10
# | 	.ascii	"shared-mem"
# | 	.section	.text.exception_grouping_2,"",@
# `-----------------------------
# RUN: at line 4
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/cfg-stackify-eh-legacy.ll -O0 -disable-wasm-fallthrough-return-opt -wasm-disable-explicit-locals -wasm-keep-registers -verify-machineinstrs -wasm-enable-eh -wasm-use-legacy-eh -exception-model=wasm -mattr=+exception-handling,-bulk-memory,-bulk-memory-opt | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/cfg-stackify-eh-legacy.ll --check-prefix=NOOPT
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -O0 -disable-wasm-fallthrough-return-opt -wasm-disable-explicit-locals -wasm-keep-registers -verify-machineinstrs -wasm-enable-eh -wasm-use-legacy-eh -exception-model=wasm -mattr=+exception-handling,-bulk-memory,-bulk-memory-opt
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/cfg-stackify-eh-legacy.ll --check-prefix=NOOPT
# note: command had no output on stdout or stderr
# RUN: at line 5
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/cfg-stackify-eh-legacy.ll -disable-wasm-fallthrough-return-opt -wasm-disable-explicit-locals -wasm-keep-registers -disable-block-placement -verify-machineinstrs -fast-isel=false -machine-sink-split-probability-threshold=0 -cgp-freq-ratio-to-skip-merge=1000 -wasm-enable-eh -wasm-use-legacy-eh -exception-model=wasm -mattr=+exception-handling,-bulk-memory,-bulk-memory-opt -wasm-disable-ehpad-sort -stats 2>&1 | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/cfg-stackify-eh-legacy.ll --check-prefix=NOSORT
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -disable-wasm-fallthrough-return-opt -wasm-disable-explicit-locals -wasm-keep-registers -disable-block-placement -verify-machineinstrs -fast-isel=false -machine-sink-split-probability-threshold=0 -cgp-freq-ratio-to-skip-merge=1000 -wasm-enable-eh -wasm-use-legacy-eh -exception-model=wasm -mattr=+exception-handling,-bulk-memory,-bulk-memory-opt -wasm-disable-ehpad-sort -stats
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/cfg-stackify-eh-legacy.ll --check-prefix=NOSORT
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/cfg-stackify-eh-legacy.ll:665:11: error: NOSORT: expected string not found in input
# | ; NOSORT: delegate 3 # label/catch{{[0-9]+}}: to caller
# |           ^
# | <stdin>:636:22: note: scanning from here
# |  call __cxa_end_catch
# |                      ^
# | <stdin>:656:2: note: possible intended match here
# |  delegate 1 # label/catch45: to caller
# |  ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/cfg-stackify-eh-legacy.ll:1739:11: error: NOSORT: expected string not found in input
# | ; NOSORT: 24 wasm-cfg-stackify - Number of call unwind mismatches found
# |           ^
# | <stdin>:1205:9: note: scanning from here
# |  br_if 0, $pop2 # 0: down to label82
# |         ^
# | <stdin>:1244:76: note: possible intended match here
# |  .globl branch_remapping_after_fixing_unwind_mismatches_1 # -- Begin function branch_remapping_after_fixing_unwind_mismatches_1
# |                                                                            ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/cfg-stackify-eh-legacy.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |               .
# |               .
# |               .
# |             631: .LBB10_7: # %catch.start1 
# |             632: .Ltmp59: # EH_LABEL 
# |             633:  catch $0=, __cpp_exception # catch40: 
# |             634:  global.set __stack_pointer, $1 
# |             635:  call $drop=, __cxa_begin_catch, $0 
# |             636:  call __cxa_end_catch 
# | check:665'0                           X error: no match found
# |             637: .LBB10_8: # %try.cont 
# | check:665'0      ~~~~~~~~~~~~~~~~~~~~~~
# |             638:  end_try # label40: 
# | check:665'0      ~~~~~~~~~~~~~~~~~~~~
# |             639:  return 
# | check:665'0      ~~~~~~~~
# |             640:  end_function 
# | check:665'0      ~~~~~~~~~~~~~~
# |             641: .Lfunc_end10: 
# | check:665'0      ~~~~~~~~~~~~~~
# |               .
# |               .
# |               .
# |             651: .Ltmp60: # EH_LABEL 
# | check:665'0      ~~~~~~~~~~~~~~~~~~~~
# |             652:  try  
# | check:665'0      ~~~~~~
# |             653:  try  
# | check:665'0      ~~~~~~
# |             654:  call $0=, baz 
# | check:665'0      ~~~~~~~~~~~~~~~
# |             655: # %bb.1: 
# | check:665'0      ~~~~~~~~~
# |             656:  delegate 1 # label/catch45: to caller 
# | check:665'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:665'1       ?                                      possible intended match
# |             657: .LBB11_2: 
# | check:665'0      ~~~~~~~~~~
# |             658:  call quux, $0 
# | check:665'0      ~~~~~~~~~~~~~~~
# |             659: .Ltmp61: # EH_LABEL 
# | check:665'0      ~~~~~~~~~~~~~~~~~~~~
# |             660: # %bb.3: # %invoke.cont 
# | check:665'0      ~~~~~~~~~~~~~~~~~~~~~~~~
# |             661:  unreachable 
# | check:665'0      ~~~~~~~~~~~~~
# |               .
# |               .
# |               .
# |            1200:  try  
# |            1201:  block  
# |            1202:  i32.const $push0=, 1 
# |            1203:  i32.and $push1=, $0, $pop0 
# |            1204:  i32.eqz $push2=, $pop1 
# |            1205:  br_if 0, $pop2 # 0: down to label82 
# | check:1739'0             X~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
# |            1206: # %bb.1: # %bb0 
# | check:1739'0     ~~~~~~~~~~~~~~~~
# |            1207:  try  
# | check:1739'0     ~~~~~~
# |            1208:  try  
# | check:1739'0     ~~~~~~
# |            1209: .Ltmp114: # EH_LABEL 
# | check:1739'0     ~~~~~~~~~~~~~~~~~~~~~
# |            1210:  call foo 
# | check:1739'0     ~~~~~~~~~~
# |               .
# |               .
# |               .
# |            1239:  return 
# | check:1739'0     ~~~~~~~~
# |            1240:  end_function 
# | check:1739'0     ~~~~~~~~~~~~~~
# |            1241: .Lfunc_end22: 
# | check:1739'0     ~~~~~~~~~~~~~~
# |            1242:  # -- End function 
# | check:1739'0     ~~~~~~~~~~~~~~~~~~~
# |            1243:  .section .text.branch_remapping_after_fixing_unwind_mismatches_1,"",@ 
# | check:1739'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            1244:  .globl branch_remapping_after_fixing_unwind_mismatches_1 # -- Begin function branch_remapping_after_fixing_unwind_mismatches_1 
# | check:1739'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:1739'1                                                                                ?                                                     possible intended match
# |            1245:  .type branch_remapping_after_fixing_unwind_mismatches_1, at function 
# | check:1739'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            1246: branch_remapping_after_fixing_unwind_mismatches_1: # @branch_remapping_after_fixing_unwind_mismatches_1 
# | check:1739'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            1247: .Lfunc_begin23: 
# | check:1739'0     ~~~~~~~~~~~~~~~~
# |            1248:  .functype branch_remapping_after_fixing_unwind_mismatches_1 () -> () 
# | check:1739'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            1249: # %bb.0: # %entry 
# | check:1739'0     ~~~~~~~~~~~~~~~~~~
# |               .
# |               .
# |               .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.CodeGen/WebAssembly/cfg-stackify-eh.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/cfg-stackify-eh.ll -disable-wasm-fallthrough-return-opt -disable-block-placement -verify-machineinstrs -fast-isel=false -machine-sink-split-probability-threshold=0 -cgp-freq-ratio-to-skip-merge=1000 -wasm-enable-eh -wasm-use-legacy-eh=false -exception-model=wasm -mattr=+exception-handling,bulk-memory | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/cfg-stackify-eh.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -disable-wasm-fallthrough-return-opt -disable-block-placement -verify-machineinstrs -fast-isel=false -machine-sink-split-probability-threshold=0 -cgp-freq-ratio-to-skip-merge=1000 -wasm-enable-eh -wasm-use-legacy-eh=false -exception-model=wasm -mattr=+exception-handling,bulk-memory
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/cfg-stackify-eh.ll
# note: command had no output on stdout or stderr
# RUN: at line 3
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/cfg-stackify-eh.ll -disable-wasm-fallthrough-return-opt -disable-block-placement -verify-machineinstrs -fast-isel=false -machine-sink-split-probability-threshold=0 -cgp-freq-ratio-to-skip-merge=1000 -wasm-enable-eh -wasm-use-legacy-eh=false -exception-model=wasm -mattr=+exception-handling,bulk-memory
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -disable-wasm-fallthrough-return-opt -disable-block-placement -verify-machineinstrs -fast-isel=false -machine-sink-split-probability-threshold=0 -cgp-freq-ratio-to-skip-merge=1000 -wasm-enable-eh -wasm-use-legacy-eh=false -exception-model=wasm -mattr=+exception-handling,bulk-memory
# .---command stdout------------
# | 	.file	"<stdin>"
# | 	.globaltype	__stack_pointer, i32
# | 	.tagtype	__cpp_exception i32
# | 	.functype	two_catches () -> ()
# | 	.functype	nested_catch () -> ()
# | 	.functype	nested_try () -> ()
# | 	.functype	loop_within_catch () -> ()
# | 	.functype	block_try_table_markers () -> ()
# | 	.functype	loop_try_table_markers (i32) -> ()
# | 	.functype	unwind_mismatches_0 () -> ()
# | 	.functype	unwind_mismatches_1 () -> ()
# | 	.functype	unwind_mismatches_2 () -> ()
# | 	.functype	unwind_mismatches_3 () -> (i32)
# | 	.functype	unwind_mismatches_4 () -> ()
# | 	.functype	unwind_mismatches_5 () -> ()
# | 	.functype	unwind_mismatches_with_loop () -> ()
# | 	.functype	unstackify_when_fixing_unwind_mismatch (i32) -> ()
# | 	.functype	cfg_sort_order (i32) -> ()
# | 	.functype	mem_intrinsics (i32, i32) -> ()
# | 	.functype	try_table_marker_with_stackified_input () -> ()
# | 	.functype	loop_exception_region () -> ()
# | 	.functype	loop_contains_exception (i32) -> ()
# | 	.functype	wasm_eh_func_info_regression_test () -> ()
# | 	.functype	exception_grouping_0 () -> ()
# | 	.functype	exception_grouping_1 () -> ()
# | 	.functype	exception_grouping_2 () -> ()
# | 	.functype	foo () -> ()
# | 	.functype	bar () -> ()
# | 	.functype	baz () -> (i32)
# | 	.functype	qux (i32) -> (i32)
# | 	.functype	quux (i32) -> ()
# | 	.functype	fun (i32) -> ()
# | 	.functype	nothrow (i32) -> ()
# | 	.functype	nothrow_i32 () -> (i32)
# | 	.functype	_ZN6ObjectD2Ev (i32) -> (i32)
# | 	.functype	_ZN7MyClassD2Ev (i32) -> (i32)
# | 	.functype	_ZN7MyClassC2ERKS_ (i32, i32) -> (i32)
# | 	.functype	__gxx_wasm_personality_v0 (i32) -> (i32)
# | 	.functype	__cxa_allocate_exception (i32) -> (i32)
# | 	.functype	__cxa_throw (i32, i32, i32) -> ()
# | 	.functype	__cxa_begin_catch (i32) -> (i32)
# | 	.functype	__cxa_end_catch () -> ()
# | 	.functype	__cxa_get_exception_ptr (i32) -> (i32)
# | 	.functype	_ZSt9terminatev () -> ()
# | 	.functype	_Unwind_CallPersonality (i32) -> (i32)
# | 	.section	.text.two_catches,"",@
# | 	.globl	two_catches                     # -- Begin function two_catches
# | 	.type	two_catches, at function
# | two_catches:                            # @two_catches
# | .Lfunc_begin0:
# | 	.functype	two_catches () -> ()
# | 	.local  	i32, i32, exnref
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	block   	
# | 	block   	() -> (i32, exnref)
# | 	try_table 	 (catch_ref __cpp_exception 0) # 0: down to label1
# | .Ltmp0:                                 # EH_LABEL
# | 	call	foo
# | .Ltmp1:                                 # EH_LABEL
# | 	br      	2                               # 2: down to label0
# | # %bb.1:
# | 	end_try_table                           # label2:
# | 	unreachable
# | .LBB0_2:                                # %catch.start
# | 	end_block                               # label1:
# | .Ltmp2:                                 # EH_LABEL
# | 	local.set	2
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table0
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	0
# | 	i32.store	__wasm_lpad_context
# | 	local.get	1
# | 	call	_Unwind_CallPersonality
# | 	drop
# | 	block   	
# | 	i32.const	8
# | 	i32.load	__wasm_lpad_context
# | 	local.tee	0
# | 	i32.const	2
# | 	i32.ne  
# | 	br_if   	0                               # 0: down to label3
# | # %bb.3:                                # %catch2
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	call	__cxa_end_catch
# | 	br      	1                               # 1: down to label0
# | .LBB0_4:                                # %catch.fallthrough
# | 	end_block                               # label3:
# | 	block   	
# | 	local.get	0
# | 	i32.const	1
# | 	i32.ne  
# | 	br_if   	0                               # 0: down to label4
# | # %bb.5:                                # %catch
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	call	__cxa_end_catch
# | 	br      	1                               # 1: down to label0
# | .LBB0_6:                                # %rethrow
# | 	end_block                               # label4:
# | 	local.get	2
# | 	throw_ref
# | .LBB0_7:                                # %try.cont
# | 	end_block                               # label0:
# | 	return
# | 	end_function
# | .Lfunc_end0:
# | 	.section	.rodata.gcc_except_table,"",@
# | 	.p2align	2, 0x0
# | GCC_except_table0:
# | .Lexception0:
# | 	.int8	255                             # @LPStart Encoding = omit
# | 	.int8	0                               # @TType Encoding = absptr
# | 	.uleb128 .Lttbase0-.Lttbaseref0
# | .Lttbaseref0:
# | 	.int8	1                               # Call site Encoding = uleb128
# | 	.uleb128 .Lcst_end0-.Lcst_begin0
# | .Lcst_begin0:
# | 	.int8	0                               # >> Call Site 0 <<
# |                                         #   On exception at call site 0
# | 	.int8	3                               #   Action: 2
# | .Lcst_end0:
# | 	.int8	1                               # >> Action Record 1 <<
# |                                         #   Catch TypeInfo 1
# | 	.int8	0                               #   No further actions
# | 	.int8	2                               # >> Action Record 2 <<
# |                                         #   Catch TypeInfo 2
# | 	.int8	125                             #   Continue to action 1
# | 	.p2align	2, 0x0
# |                                         # >> Catch TypeInfos <<
# | 	.int32	_ZTIi                           # TypeInfo 2
# | 	.int32	_ZTId                           # TypeInfo 1
# | .Lttbase0:
# | 	.p2align	2, 0x0
# | .LGCC_except_table_end0:
# | 	.size	GCC_except_table0, .LGCC_except_table_end0-GCC_except_table0
# |                                         # -- End function
# | 	.section	.text.nested_catch,"",@
# | 	.globl	nested_catch                    # -- Begin function nested_catch
# | 	.type	nested_catch, at function
# | nested_catch:                           # @nested_catch
# | .Lfunc_begin1:
# | 	.functype	nested_catch () -> ()
# | 	.local  	i32, i32, exnref, exnref
# | # %bb.0:                                # %entry
# | 	block   	exnref
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	block   	
# | 	block   	() -> (i32, exnref)
# | 	try_table 	 (catch_ref __cpp_exception 0) # 0: down to label7
# | .Ltmp3:                                 # EH_LABEL
# | 	call	foo
# | .Ltmp4:                                 # EH_LABEL
# | 	br      	2                               # 2: down to label6
# | # %bb.1:
# | 	end_try_table                           # label8:
# | 	unreachable
# | .LBB1_2:                                # %catch.start
# | 	end_block                               # label7:
# | .Ltmp5:                                 # EH_LABEL
# | 	local.set	2
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table1
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	0
# | 	i32.store	__wasm_lpad_context
# | 	local.get	1
# | 	call	_Unwind_CallPersonality
# | 	drop
# | 	block   	
# | 	block   	
# | 	i32.const	8
# | 	i32.load	__wasm_lpad_context
# | 	i32.const	1
# | 	i32.ne  
# | 	br_if   	0                               # 0: down to label10
# | # %bb.3:                                # %catch
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	block   	exnref
# | 	try_table 	 (catch_all_ref 0)      # 0: down to label11
# | 	block   	() -> (i32, exnref)
# | 	try_table 	 (catch_ref __cpp_exception 0) # 0: down to label13
# | .Ltmp6:                                 # EH_LABEL
# | 	call	foo
# | .Ltmp7:                                 # EH_LABEL
# | 	br      	5                               # 5: down to label9
# | # %bb.4:
# | 	end_try_table                           # label14:
# | 	unreachable
# | .LBB1_5:                                # %catch.start3
# | 	end_block                               # label13:
# | .Ltmp8:                                 # EH_LABEL
# | 	local.set	2
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table1
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	1
# | 	i32.store	__wasm_lpad_context
# | 	local.get	1
# | 	call	_Unwind_CallPersonality
# | 	drop
# | 	block   	
# | 	block   	
# | 	i32.const	8
# | 	i32.load	__wasm_lpad_context
# | 	i32.const	1
# | 	i32.ne  
# | 	br_if   	0                               # 0: down to label16
# | # %bb.6:                                # %catch6
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	block   	exnref
# | 	try_table 	 (catch_all_ref 0)      # 0: down to label17
# | .Ltmp9:                                 # EH_LABEL
# | 	call	foo
# | .Ltmp10:                                # EH_LABEL
# | 	br      	3                               # 3: down to label15
# | # %bb.7:
# | 	end_try_table                           # label18:
# | 	unreachable
# | .LBB1_8:                                # %ehcleanup
# | 	end_block                               # label17:
# | .Ltmp11:                                # EH_LABEL
# | 	local.set	2
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	try_table 	 (catch_all_ref 7)      # 7: down to label5
# | 	call	__cxa_end_catch
# | # %bb.9:
# | 	end_try_table                           # label19:
# | .LBB1_10:
# | 	local.get	2
# | 	throw_ref
# | .LBB1_11:                               # %rethrow5
# | 	end_block                               # label16:
# | 	local.get	2
# | 	throw_ref
# | .LBB1_12:                               # %invoke.cont8
# | 	end_block                               # label15:
# | 	try_table 	 (catch_all_ref 5)      # 5: down to label5
# | 	call	__cxa_end_catch
# | # %bb.13:
# | 	end_try_table                           # label20:
# | .LBB1_14:
# | 	br      	3                               # 3: down to label9
# | # %bb.15:
# | 	end_try_table                           # label12:
# | 	unreachable
# | .LBB1_16:                               # %ehcleanup9
# | 	end_block                               # label11:
# | .Ltmp12:                                # EH_LABEL
# | 	local.set	2
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	call	__cxa_end_catch
# | 	local.get	2
# | 	throw_ref
# | .LBB1_17:                               # %rethrow
# | 	end_block                               # label10:
# | 	local.get	2
# | 	throw_ref
# | .LBB1_18:                               # %try.cont
# | 	end_block                               # label9:
# | 	call	__cxa_end_catch
# | .LBB1_19:                               # %try.cont11
# | 	end_block                               # label6:
# | 	return
# | 	unreachable
# | .LBB1_20:
# | 	end_block                               # label5:
# | 	local.set	3
# | 	local.get	3
# | 	throw_ref
# | 	end_function
# | .Lfunc_end1:
# | 	.section	.rodata.gcc_except_table,"",@
# | 	.p2align	2, 0x0
# | GCC_except_table1:
# | .Lexception1:
# | 	.int8	255                             # @LPStart Encoding = omit
# | 	.int8	0                               # @TType Encoding = absptr
# | 	.uleb128 .Lttbase1-.Lttbaseref1
# | .Lttbaseref1:
# | 	.int8	1                               # Call site Encoding = uleb128
# | 	.uleb128 .Lcst_end1-.Lcst_begin1
# | .Lcst_begin1:
# | 	.int8	0                               # >> Call Site 0 <<
# |                                         #   On exception at call site 0
# | 	.int8	1                               #   Action: 1
# | 	.int8	1                               # >> Call Site 1 <<
# |                                         #   On exception at call site 1
# | 	.int8	1                               #   Action: 1
# | .Lcst_end1:
# | 	.int8	1                               # >> Action Record 1 <<
# |                                         #   Catch TypeInfo 1
# | 	.int8	0                               #   No further actions
# | 	.p2align	2, 0x0
# |                                         # >> Catch TypeInfos <<
# | 	.int32	_ZTIi                           # TypeInfo 1
# | .Lttbase1:
# | 	.p2align	2, 0x0
# | .LGCC_except_table_end1:
# | 	.size	GCC_except_table1, .LGCC_except_table_end1-GCC_except_table1
# |                                         # -- End function
# | 	.section	.text.nested_try,"",@
# | 	.globl	nested_try                      # -- Begin function nested_try
# | 	.type	nested_try, at function
# | nested_try:                             # @nested_try
# | .Lfunc_begin2:
# | 	.functype	nested_try () -> ()
# | 	.local  	i32, i32
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	block   	
# | 	block   	i32
# | 	try_table 	 (catch __cpp_exception 0) # 0: down to label22
# | 	block   	i32
# | 	try_table 	 (catch __cpp_exception 0) # 0: down to label24
# | .Ltmp13:                                # EH_LABEL
# | 	call	foo
# | .Ltmp14:                                # EH_LABEL
# | 	br      	4                               # 4: down to label21
# | # %bb.1:
# | 	end_try_table                           # label25:
# | 	unreachable
# | .LBB2_2:                                # %catch.start
# | 	end_block                               # label24:
# | .Ltmp15:                                # EH_LABEL
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | .Ltmp16:                                # EH_LABEL
# | 	call	__cxa_end_catch
# | .Ltmp17:                                # EH_LABEL
# | # %bb.3:                                # %invoke.cont1
# | 	br      	2                               # 2: down to label21
# | # %bb.4:
# | 	end_try_table                           # label23:
# | 	unreachable
# | .LBB2_5:                                # %catch.start3
# | 	end_block                               # label22:
# | .Ltmp18:                                # EH_LABEL
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	call	__cxa_end_catch
# | .LBB2_6:                                # %try.cont7
# | 	end_block                               # label21:
# | 	return
# | 	end_function
# | .Lfunc_end2:
# |                                         # -- End function
# | 	.section	.text.loop_within_catch,"",@
# | 	.globl	loop_within_catch               # -- Begin function loop_within_catch
# | 	.type	loop_within_catch, at function
# | loop_within_catch:                      # @loop_within_catch
# | .Lfunc_begin3:
# | 	.functype	loop_within_catch () -> ()
# | 	.local  	i32, i32, exnref
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	block   	
# | 	block   	i32
# | 	try_table 	 (catch __cpp_exception 0) # 0: down to label27
# | .Ltmp19:                                # EH_LABEL
# | 	call	foo
# | .Ltmp20:                                # EH_LABEL
# | 	br      	2                               # 2: down to label26
# | # %bb.1:
# | 	end_try_table                           # label28:
# | 	unreachable
# | .LBB3_2:                                # %catch.start
# | 	end_block                               # label27:
# | .Ltmp21:                                # EH_LABEL
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	i32.const	0
# | 	local.set	1
# | .LBB3_3:                                # %for.cond
# |                                         # =>This Inner Loop Header: Depth=1
# | 	loop    	                                # label29:
# | 	block   	
# | 	block   	
# | 	local.get	1
# | 	i32.const	49
# | 	i32.gt_s
# | 	br_if   	0                               # 0: down to label31
# | # %bb.4:                                # %for.body
# |                                         #   in Loop: Header=BB3_3 Depth=1
# | 	block   	exnref
# | 	try_table 	 (catch_all_ref 0)      # 0: down to label32
# | .Ltmp22:                                # EH_LABEL
# | 	call	foo
# | .Ltmp23:                                # EH_LABEL
# | 	br      	3                               # 3: down to label30
# | # %bb.5:
# | 	end_try_table                           # label33:
# | 	unreachable
# | .LBB3_6:                                # %ehcleanup
# | 	end_block                               # label32:
# | .Ltmp24:                                # EH_LABEL
# | .Ltmp25:                                # EH_LABEL
# | 	local.set	2
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	block   	
# | 	block   	
# | 	try_table 	 (catch_all 0)          # 0: down to label35
# | 	call	__cxa_end_catch
# | .Ltmp26:                                # EH_LABEL
# | 	br      	2                               # 2: down to label34
# | # %bb.7:
# | 	end_try_table                           # label36:
# | 	unreachable
# | .LBB3_8:                                # %terminate
# | 	end_block                               # label35:
# | .Ltmp27:                                # EH_LABEL
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	call	_ZSt9terminatev
# | 	unreachable
# | .LBB3_9:                                # %invoke.cont2
# | 	end_block                               # label34:
# | 	local.get	2
# | 	throw_ref
# | .LBB3_10:                               # %for.end
# | 	end_block                               # label31:
# | 	call	__cxa_end_catch
# | 	br      	2                               # 2: down to label26
# | .LBB3_11:                               # %for.inc
# |                                         #   in Loop: Header=BB3_3 Depth=1
# | 	end_block                               # label30:
# | 	local.get	1
# | 	i32.const	1
# | 	i32.add 
# | 	local.set	1
# | 	br      	0                               # 0: up to label29
# | .LBB3_12:                               # %try.cont
# | 	end_loop
# | 	end_block                               # label26:
# | 	return
# | 	end_function
# | .Lfunc_end3:
# |                                         # -- End function
# | 	.section	.text.block_try_table_markers,"",@
# | 	.globl	block_try_table_markers         # -- Begin function block_try_table_markers
# | 	.type	block_try_table_markers, at function
# | block_try_table_markers:                # @block_try_table_markers
# | .Lfunc_begin4:
# | 	.functype	block_try_table_markers () -> ()
# | 	.local  	i32
# | # %bb.0:                                # %bb0
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	block   	
# | 	i32.const	0
# | 	br_if   	0                               # 0: down to label37
# | # %bb.1:                                # %bb1
# | 	block   	i32
# | 	try_table 	 (catch __cpp_exception 0) # 0: down to label38
# | 	block   	
# | 	i32.const	0
# | 	br_if   	0                               # 0: down to label40
# | # %bb.2:                                # %bb3
# | .Ltmp30:                                # EH_LABEL
# | 	call	foo
# | .Ltmp31:                                # EH_LABEL
# | 	br      	3                               # 3: down to label37
# | .LBB4_3:                                # %bb4
# | 	end_block                               # label40:
# | .Ltmp28:                                # EH_LABEL
# | 	call	bar
# | .Ltmp29:                                # EH_LABEL
# | 	br      	2                               # 2: down to label37
# | # %bb.4:
# | 	end_try_table                           # label39:
# | 	unreachable
# | .LBB4_5:                                # %catch.start
# | 	end_block                               # label38:
# | .Ltmp32:                                # EH_LABEL
# | 	drop
# | 	local.get	0
# | 	global.set	__stack_pointer
# | .LBB4_6:                                # %try.cont
# | 	end_block                               # label37:
# | 	return
# | 	end_function
# | .Lfunc_end4:
# |                                         # -- End function
# | 	.section	.text.loop_try_table_markers,"",@
# | 	.globl	loop_try_table_markers          # -- Begin function loop_try_table_markers
# | 	.type	loop_try_table_markers, at function
# | loop_try_table_markers:                 # @loop_try_table_markers
# | .Lfunc_begin5:
# | 	.functype	loop_try_table_markers (i32) -> ()
# | 	.local  	i32
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	local.set	1
# | 	local.get	0
# | 	i32.const	0
# | 	i32.store	0
# | .LBB5_1:                                # %loop
# |                                         # =>This Inner Loop Header: Depth=1
# | 	loop    	                                # label41:
# | 	local.get	0
# | 	i32.const	1
# | 	i32.store	0
# | 	block   	i32
# | 	try_table 	 (catch __cpp_exception 0) # 0: down to label42
# | .Ltmp33:                                # EH_LABEL
# | 	call	foo
# | .Ltmp34:                                # EH_LABEL
# | 	br      	2                               # 2: up to label41
# | # %bb.2:
# | 	end_try_table                           # label43:
# | 	unreachable
# | .LBB5_3:                                # %catch.start
# |                                         #   in Loop: Header=BB5_1 Depth=1
# | 	end_block                               # label42:
# | .Ltmp35:                                # EH_LABEL
# | 	drop
# | 	local.get	1
# | 	global.set	__stack_pointer
# | 	br      	0                               # 0: up to label41
# | .LBB5_4:
# | 	end_loop
# | 	end_function
# | .Lfunc_end5:
# |                                         # -- End function
# | 	.section	.text.unwind_mismatches_0,"",@
# | 	.globl	unwind_mismatches_0             # -- Begin function unwind_mismatches_0
# | 	.type	unwind_mismatches_0, at function
# | unwind_mismatches_0:                    # @unwind_mismatches_0
# | .Lfunc_begin6:
# | 	.functype	unwind_mismatches_0 () -> ()
# | 	.local  	i32
# | # %bb.0:                                # %bb0
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	block   	
# | 	block   	
# | 	block   	i32
# | 	try_table 	 (catch __cpp_exception 0) # 0: down to label46
# | .Ltmp36:                                # EH_LABEL
# | 	call	foo
# | .Ltmp37:                                # EH_LABEL
# | 	br      	2                               # 2: down to label45
# | # %bb.1:
# | 	end_try_table                           # label47:
# | 	unreachable
# | .LBB6_2:                                # %catch.start0
# | 	end_block                               # label46:
# | .Ltmp38:                                # EH_LABEL
# | 	drop
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	br      	1                               # 1: down to label44
# | .LBB6_3:                                # %bb1
# | 	end_block                               # label45:
# | 	block   	i32
# | 	try_table 	 (catch __cpp_exception 0) # 0: down to label48
# | .Ltmp39:                                # EH_LABEL
# | 	call	bar
# | .Ltmp40:                                # EH_LABEL
# | 	br      	2                               # 2: down to label44
# | # %bb.4:
# | 	end_try_table                           # label49:
# | 	unreachable
# | .LBB6_5:                                # %catch.start1
# | 	end_block                               # label48:
# | .Ltmp41:                                # EH_LABEL
# | 	drop
# | 	local.get	0
# | 	global.set	__stack_pointer
# | .LBB6_6:                                # %try.cont
# | 	end_block                               # label44:
# | 	return
# | 	end_function
# | .Lfunc_end6:
# |                                         # -- End function
# | 	.section	.text.unwind_mismatches_1,"",@
# | 	.globl	unwind_mismatches_1             # -- Begin function unwind_mismatches_1
# | 	.type	unwind_mismatches_1, at function
# | unwind_mismatches_1:                    # @unwind_mismatches_1
# | .Lfunc_begin7:
# | 	.functype	unwind_mismatches_1 () -> ()
# | 	.local  	i32
# | # %bb.0:                                # %bb0
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	block   	
# | 	block   	i32
# | 	try_table 	 (catch __cpp_exception 0) # 0: down to label51
# | .Ltmp42:                                # EH_LABEL
# | 	call	foo
# | .Ltmp43:                                # EH_LABEL
# | 	br      	2                               # 2: down to label50
# | # %bb.1:
# | 	end_try_table                           # label52:
# | 	unreachable
# | .LBB7_2:                                # %catch.start0
# | 	end_block                               # label51:
# | .Ltmp44:                                # EH_LABEL
# | 	drop
# | 	local.get	0
# | 	global.set	__stack_pointer
# | # %bb.3:                                # %try.cont
# | 	return
# | .LBB7_4:                                # %bb1
# | 	end_block                               # label50:
# | 	call	bar
# | 	call	baz
# | 	call	nothrow
# | 	return
# | 	end_function
# | .Lfunc_end7:
# |                                         # -- End function
# | 	.section	.text.unwind_mismatches_2,"",@
# | 	.globl	unwind_mismatches_2             # -- Begin function unwind_mismatches_2
# | 	.type	unwind_mismatches_2, at function
# | unwind_mismatches_2:                    # @unwind_mismatches_2
# | .Lfunc_begin8:
# | 	.functype	unwind_mismatches_2 () -> ()
# | 	.local  	i32
# | # %bb.0:                                # %bb0
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	block   	
# | 	block   	
# | 	block   	i32
# | 	try_table 	 (catch __cpp_exception 0) # 0: down to label55
# | .Ltmp45:                                # EH_LABEL
# | 	call	foo
# | .Ltmp46:                                # EH_LABEL
# | 	br      	2                               # 2: down to label54
# | # %bb.1:
# | 	end_try_table                           # label56:
# | 	unreachable
# | .LBB8_2:                                # %catch.start0
# | 	end_block                               # label55:
# | .Ltmp47:                                # EH_LABEL
# | 	drop
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	br      	1                               # 1: down to label53
# | .LBB8_3:                                # %bb1
# | 	end_block                               # label54:
# | 	call	foo
# | 	block   	i32
# | 	try_table 	 (catch __cpp_exception 0) # 0: down to label57
# | .Ltmp48:                                # EH_LABEL
# | 	call	bar
# | .Ltmp49:                                # EH_LABEL
# | 	br      	2                               # 2: down to label53
# | # %bb.4:
# | 	end_try_table                           # label58:
# | 	unreachable
# | .LBB8_5:                                # %catch.start1
# | 	end_block                               # label57:
# | .Ltmp50:                                # EH_LABEL
# | 	drop
# | 	local.get	0
# | 	global.set	__stack_pointer
# | .LBB8_6:                                # %try.cont
# | 	end_block                               # label53:
# | 	return
# | 	end_function
# | .Lfunc_end8:
# |                                         # -- End function
# | 	.section	.text.unwind_mismatches_3,"",@
# | 	.globl	unwind_mismatches_3             # -- Begin function unwind_mismatches_3
# | 	.type	unwind_mismatches_3, at function
# | unwind_mismatches_3:                    # @unwind_mismatches_3
# | .Lfunc_begin9:
# | 	.functype	unwind_mismatches_3 () -> (i32)
# | 	.local  	i32
# | # %bb.0:                                # %bb0
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	block   	
# | 	block   	i32
# | 	try_table 	 (catch __cpp_exception 0) # 0: down to label60
# | .Ltmp51:                                # EH_LABEL
# | 	call	foo
# | .Ltmp52:                                # EH_LABEL
# | 	br      	2                               # 2: down to label59
# | # %bb.1:
# | 	end_try_table                           # label61:
# | 	unreachable
# | .LBB9_2:                                # %catch.start0
# | 	end_block                               # label60:
# | .Ltmp53:                                # EH_LABEL
# | 	drop
# | 	local.get	0
# | 	global.set	__stack_pointer
# | # %bb.3:                                # %try.cont
# | 	i32.const	0
# | 	return
# | .LBB9_4:                                # %bb1
# | 	end_block                               # label59:
# | 	i32.const	5
# | 	call	qux
# | 	return
# | 	end_function
# | .Lfunc_end9:
# |                                         # -- End function
# | 	.section	.text.unwind_mismatches_4,"",@
# | 	.globl	unwind_mismatches_4             # -- Begin function unwind_mismatches_4
# | 	.type	unwind_mismatches_4, at function
# | unwind_mismatches_4:                    # @unwind_mismatches_4
# | .Lfunc_begin10:
# | 	.functype	unwind_mismatches_4 () -> ()
# | 	.local  	i32, i32
# | # %bb.0:                                # %bb0
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	block   	
# | 	block   	
# | 	block   	i32
# | 	try_table 	 (catch __cpp_exception 0) # 0: down to label64
# | .Ltmp54:                                # EH_LABEL
# | 	call	foo
# | .Ltmp55:                                # EH_LABEL
# | 	br      	2                               # 2: down to label63
# | # %bb.1:
# | 	end_try_table                           # label65:
# | 	unreachable
# | .LBB10_2:                               # %catch.start0
# | 	end_block                               # label64:
# | .Ltmp56:                                # EH_LABEL
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	call	__cxa_end_catch
# | 	br      	1                               # 1: down to label62
# | .LBB10_3:                               # %bb1
# | 	end_block                               # label63:
# | 	block   	i32
# | 	try_table 	 (catch __cpp_exception 0) # 0: down to label66
# | .Ltmp57:                                # EH_LABEL
# | 	call	bar
# | .Ltmp58:                                # EH_LABEL
# | 	br      	2                               # 2: down to label62
# | # %bb.4:
# | 	end_try_table                           # label67:
# | 	unreachable
# | .LBB10_5:                               # %catch.start1
# | 	end_block                               # label66:
# | .Ltmp59:                                # EH_LABEL
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	call	__cxa_end_catch
# | .LBB10_6:                               # %try.cont
# | 	end_block                               # label62:
# | 	return
# | 	end_function
# | .Lfunc_end10:
# |                                         # -- End function
# | 	.section	.text.unwind_mismatches_5,"",@
# | 	.globl	unwind_mismatches_5             # -- Begin function unwind_mismatches_5
# | 	.type	unwind_mismatches_5, at function
# | unwind_mismatches_5:                    # @unwind_mismatches_5
# | .Lfunc_begin11:
# | 	.functype	unwind_mismatches_5 () -> ()
# | 	.local  	i32, i32, exnref, exnref
# | # %bb.0:                                # %entry
# | 	block   	exnref
# | 	global.get	__stack_pointer
# | 	local.set	0
# | .Ltmp60:                                # EH_LABEL
# | 	block   	
# | 	block   	exnref
# | 	try_table 	 (catch_all_ref 0)      # 0: down to label70
# | 	try_table 	 (catch_all_ref 3)      # 3: down to label68
# | 	call	baz
# | 	local.set	1
# | # %bb.1:
# | 	end_try_table                           # label72:
# | .LBB11_2:
# | 	local.get	1
# | 	call	quux
# | .Ltmp61:                                # EH_LABEL
# | 	br      	2                               # 2: down to label69
# | # %bb.3:
# | 	end_try_table                           # label71:
# | 	unreachable
# | .LBB11_4:                               # %ehcleanup
# | 	end_block                               # label70:
# | .Ltmp62:                                # EH_LABEL
# | 	local.set	2
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	local.get	2
# | 	throw_ref
# | .LBB11_5:                               # %invoke.cont
# | 	end_block                               # label69:
# | 	unreachable
# | 	unreachable
# | .LBB11_6:
# | 	end_block                               # label68:
# | 	local.set	3
# | 	local.get	3
# | 	throw_ref
# | 	end_function
# | .Lfunc_end11:
# |                                         # -- End function
# | 	.section	.text.unwind_mismatches_with_loop,"",@
# | 	.globl	unwind_mismatches_with_loop     # -- Begin function unwind_mismatches_with_loop
# | 	.type	unwind_mismatches_with_loop, at function
# | unwind_mismatches_with_loop:            # @unwind_mismatches_with_loop
# | .Lfunc_begin12:
# | 	.functype	unwind_mismatches_with_loop () -> ()
# | 	.local  	i32, exnref
# | # %bb.0:                                # %bb0
# | 	block   	exnref
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	block   	i32
# | 	try_table 	 (catch __cpp_exception 0) # 0: down to label74
# | 	block   	
# | 	block   	
# | 	block   	i32
# | 	try_table 	 (catch_all_ref 5)      # 5: down to label73
# | 	try_table 	 (catch __cpp_exception 1) # 1: down to label78
# | .Ltmp63:                                # EH_LABEL
# | 	call	foo
# | .Ltmp64:                                # EH_LABEL
# | 	br      	3                               # 3: down to label77
# | # %bb.1:
# | 	end_try_table                           # label80:
# | # %bb.2:
# | 	end_try_table                           # label79:
# | .LBB12_3:
# | 	unreachable
# | .LBB12_4:                               # %catch.start0
# | 	end_block                               # label78:
# | .Ltmp65:                                # EH_LABEL
# | 	drop
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	br      	1                               # 1: down to label76
# | .LBB12_5:                               # %bb1
# | 	end_block                               # label77:
# | .Ltmp66:                                # EH_LABEL
# | 	call	bar
# | .Ltmp67:                                # EH_LABEL
# | .LBB12_6:                               # %bb2
# |                                         # =>This Inner Loop Header: Depth=1
# | 	end_block                               # label76:
# | 	loop    	                                # label81:
# | .Ltmp68:                                # EH_LABEL
# | 	call	foo
# | .Ltmp69:                                # EH_LABEL
# | 	br      	0                               # 0: up to label81
# | # %bb.7:
# | 	end_loop
# | 	end_try_table                           # label75:
# | 	unreachable
# | .LBB12_8:                               # %catch.start1
# | 	end_block                               # label74:
# | .Ltmp70:                                # EH_LABEL
# | 	drop
# | 	local.get	0
# | 	global.set	__stack_pointer
# | # %bb.9:                                # %try.cont
# | 	return
# | 	unreachable
# | .LBB12_10:
# | 	end_block                               # label73:
# | 	local.set	1
# | 	local.get	1
# | 	throw_ref
# | 	end_function
# | .Lfunc_end12:
# |                                         # -- End function
# | 	.section	.text.unstackify_when_fixing_unwind_mismatch,"",@
# | 	.globl	unstackify_when_fixing_unwind_mismatch # -- Begin function unstackify_when_fixing_unwind_mismatch
# | 	.type	unstackify_when_fixing_unwind_mismatch, at function
# | unstackify_when_fixing_unwind_mismatch: # @unstackify_when_fixing_unwind_mismatch
# | .Lfunc_begin13:
# | 	.functype	unstackify_when_fixing_unwind_mismatch (i32) -> ()
# | 	.local  	i32
# | # %bb.0:                                # %bb0
# | 	global.get	__stack_pointer
# | 	local.set	1
# | 	block   	
# | 	block   	i32
# | 	try_table 	 (catch __cpp_exception 0) # 0: down to label83
# | .Ltmp71:                                # EH_LABEL
# | 	call	foo
# | .Ltmp72:                                # EH_LABEL
# | 	br      	2                               # 2: down to label82
# | # %bb.1:
# | 	end_try_table                           # label84:
# | 	unreachable
# | .LBB13_2:                               # %catch.start0
# | 	end_block                               # label83:
# | .Ltmp73:                                # EH_LABEL
# | 	drop
# | 	local.get	1
# | 	global.set	__stack_pointer
# | # %bb.3:                                # %try.cont
# | 	return
# | .LBB13_4:                               # %bb1
# | 	end_block                               # label82:
# | 	local.get	0
# | 	i32.const	4
# | 	i32.add 
# | 	local.tee	0
# | 	local.get	0
# | 	i32.load	0
# | 	call	baz
# | 	i32.add 
# | 	i32.store	0
# | 	return
# | 	end_function
# | .Lfunc_end13:
# |                                         # -- End function
# | 	.section	.text.cfg_sort_order,"",@
# | 	.globl	cfg_sort_order                  # -- Begin function cfg_sort_order
# | 	.type	cfg_sort_order, at function
# | cfg_sort_order:                         # @cfg_sort_order
# | .Lfunc_begin14:
# | 	.functype	cfg_sort_order (i32) -> ()
# | 	.local  	i32
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	local.set	1
# | 	block   	
# | 	local.get	0
# | 	i32.eqz
# | 	br_if   	0                               # 0: down to label85
# | # %bb.1:                                # %if.then
# | 	block   	
# | 	block   	i32
# | 	try_table 	 (catch __cpp_exception 0) # 0: down to label87
# | .Ltmp74:                                # EH_LABEL
# | 	call	foo
# | .Ltmp75:                                # EH_LABEL
# | 	br      	2                               # 2: down to label86
# | # %bb.2:
# | 	end_try_table                           # label88:
# | 	unreachable
# | .LBB14_3:                               # %catch.start
# | 	end_block                               # label87:
# | .Ltmp76:                                # EH_LABEL
# | 	local.set	0
# | 	local.get	1
# | 	global.set	__stack_pointer
# | 	local.get	0
# | 	call	__cxa_begin_catch
# | 	drop
# | 	call	__cxa_end_catch
# | 	br      	1                               # 1: down to label85
# | .LBB14_4:                               # %cont
# | 	end_block                               # label86:
# | 	call	foo
# | .LBB14_5:                               # %if.end
# | 	end_block                               # label85:
# | 	return
# | 	end_function
# | .Lfunc_end14:
# |                                         # -- End function
# | 	.section	.text.mem_intrinsics,"",@
# | 	.globl	mem_intrinsics                  # -- Begin function mem_intrinsics
# | 	.type	mem_intrinsics, at function
# | mem_intrinsics:                         # @mem_intrinsics
# | .Lfunc_begin15:
# | 	.functype	mem_intrinsics (i32, i32) -> ()
# | 	.local  	i32, exnref
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	i32.const	16
# | 	i32.sub 
# | 	local.tee	2
# | 	global.set	__stack_pointer
# | 	block   	
# | 	block   	exnref
# | 	try_table 	 (catch_all_ref 0)      # 0: down to label90
# | .Ltmp77:                                # EH_LABEL
# | 	call	foo
# | .Ltmp78:                                # EH_LABEL
# | 	br      	2                               # 2: down to label89
# | # %bb.1:
# | 	end_try_table                           # label91:
# | 	unreachable
# | .LBB15_2:                               # %ehcleanup
# | 	end_block                               # label90:
# | .Ltmp79:                                # EH_LABEL
# | 	local.set	3
# | 	local.get	2
# | 	global.set	__stack_pointer
# | 	local.get	2
# | 	i32.const	15
# | 	i32.add 
# | 	call	_ZN6ObjectD2Ev
# | 	drop
# | 	local.get	3
# | 	throw_ref
# | .LBB15_3:                               # %invoke.cont
# | 	end_block                               # label89:
# | 	local.get	0
# | 	local.get	1
# | 	i32.const	100
# | 	memory.copy	0, 0
# | 	local.get	0
# | 	local.get	1
# | 	i32.const	100
# | 	memory.copy	0, 0
# | 	local.get	0
# | 	i32.const	0
# | 	i32.const	100
# | 	memory.fill	0
# | 	local.get	2
# | 	i32.const	15
# | 	i32.add 
# | 	call	_ZN6ObjectD2Ev
# | 	drop
# | 	local.get	2
# | 	i32.const	16
# | 	i32.add 
# | 	global.set	__stack_pointer
# | 	return
# | 	end_function
# | .Lfunc_end15:
# |                                         # -- End function
# | 	.section	.text.try_table_marker_with_stackified_input,"",@
# | 	.globl	try_table_marker_with_stackified_input # -- Begin function try_table_marker_with_stackified_input
# | 	.type	try_table_marker_with_stackified_input, at function
# | try_table_marker_with_stackified_input: # @try_table_marker_with_stackified_input
# | .Lfunc_begin16:
# | 	.functype	try_table_marker_with_stackified_input () -> ()
# | 	.local  	i32
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	local.set	0
# | .Ltmp80:                                # EH_LABEL
# | 	block   	
# | 	block   	
# | 	try_table 	 (catch_all 0)          # 0: down to label93
# | 	call	nothrow_i32
# | 	call	fun
# | .Ltmp81:                                # EH_LABEL
# | 	br      	2                               # 2: down to label92
# | # %bb.1:
# | 	end_try_table                           # label94:
# | 	unreachable
# | .LBB16_2:                               # %terminate
# | 	end_block                               # label93:
# | .Ltmp82:                                # EH_LABEL
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	call	_ZSt9terminatev
# | 	unreachable
# | .LBB16_3:                               # %invoke.cont
# | 	end_block                               # label92:
# | 	return
# | 	end_function
# | .Lfunc_end16:
# |                                         # -- End function
# | 	.section	.text.loop_exception_region,"",@
# | 	.globl	loop_exception_region           # -- Begin function loop_exception_region
# | 	.type	loop_exception_region, at function
# | loop_exception_region:                  # @loop_exception_region
# | .Lfunc_begin17:
# | 	.functype	loop_exception_region () -> ()
# | 	.local  	i32, i32, i32, exnref, i32
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	i32.const	16
# | 	i32.sub 
# | 	local.tee	0
# | 	global.set	__stack_pointer
# | 	i32.const	0
# | 	local.set	1
# | .LBB17_1:                               # %for.cond
# |                                         # =>This Inner Loop Header: Depth=1
# | 	loop    	                                # label95:
# | 	block   	
# | 	block   	
# | 	local.get	1
# | 	i32.const	8
# | 	i32.gt_s
# | 	br_if   	0                               # 0: down to label97
# | # %bb.2:                                # %for.body
# |                                         #   in Loop: Header=BB17_1 Depth=1
# | 	block   	() -> (i32, exnref)
# | 	try_table 	 (catch_ref __cpp_exception 0) # 0: down to label98
# | .Ltmp83:                                # EH_LABEL
# | 	local.get	1
# | 	call	quux
# | .Ltmp84:                                # EH_LABEL
# | 	br      	3                               # 3: down to label96
# | # %bb.3:
# | 	end_try_table                           # label99:
# | 	unreachable
# | .LBB17_4:                               # %catch.start
# |                                         #   in Loop: Header=BB17_1 Depth=1
# | 	end_block                               # label98:
# | .Ltmp85:                                # EH_LABEL
# | 	local.set	3
# | 	local.set	2
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table17
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	0
# | 	i32.store	__wasm_lpad_context
# | 	local.get	2
# | 	call	_Unwind_CallPersonality
# | 	drop
# | 	block   	
# | 	block   	
# | 	i32.const	8
# | 	i32.load	__wasm_lpad_context
# | 	i32.const	1
# | 	i32.ne  
# | 	br_if   	0                               # 0: down to label101
# | # %bb.5:                                # %catch
# |                                         #   in Loop: Header=BB17_1 Depth=1
# | 	local.get	0
# | 	i32.const	12
# | 	i32.add 
# | 	local.get	2
# | 	call	__cxa_get_exception_ptr
# | 	call	_ZN7MyClassC2ERKS_
# | 	local.set	4
# | 	local.get	2
# | 	call	__cxa_begin_catch
# | 	drop
# | .Ltmp86:                                # EH_LABEL
# | 	block   	exnref
# | 	try_table 	 (catch_all_ref 0)      # 0: down to label102
# | 	local.get	4
# | 	i32.load	0
# | 	call	quux
# | .Ltmp87:                                # EH_LABEL
# | 	br      	3                               # 3: down to label100
# | # %bb.6:
# | 	end_try_table                           # label103:
# | 	unreachable
# | .LBB17_7:                               # %ehcleanup
# | 	end_block                               # label102:
# | .Ltmp88:                                # EH_LABEL
# | 	local.set	3
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	local.get	4
# | 	call	_ZN7MyClassD2Ev
# | 	drop
# | 	block   	
# | 	block   	
# | 	try_table 	 (catch_all 0)          # 0: down to label105
# | .Ltmp89:                                # EH_LABEL
# | 	call	__cxa_end_catch
# | .Ltmp90:                                # EH_LABEL
# | 	br      	2                               # 2: down to label104
# | # %bb.8:
# | 	end_try_table                           # label106:
# | 	unreachable
# | .LBB17_9:                               # %terminate7
# | 	end_block                               # label105:
# | .Ltmp91:                                # EH_LABEL
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	call	_ZSt9terminatev
# | 	unreachable
# | .LBB17_10:                              # %invoke.cont6
# | 	end_block                               # label104:
# | 	local.get	3
# | 	throw_ref
# | .LBB17_11:                              # %rethrow
# | 	end_block                               # label101:
# | 	local.get	3
# | 	throw_ref
# | .LBB17_12:                              # %invoke.cont2
# |                                         #   in Loop: Header=BB17_1 Depth=1
# | 	end_block                               # label100:
# | 	local.get	4
# | 	call	_ZN7MyClassD2Ev
# | 	drop
# | 	call	__cxa_end_catch
# | 	br      	1                               # 1: down to label96
# | .LBB17_13:                              # %for.end
# | 	end_block                               # label97:
# | 	local.get	0
# | 	i32.const	16
# | 	i32.add 
# | 	global.set	__stack_pointer
# | 	return
# | .LBB17_14:                              # %for.inc
# |                                         #   in Loop: Header=BB17_1 Depth=1
# | 	end_block                               # label96:
# | 	local.get	1
# | 	i32.const	1
# | 	i32.add 
# | 	local.set	1
# | 	br      	0                               # 0: up to label95
# | .LBB17_15:
# | 	end_loop
# | 	end_function
# | .Lfunc_end17:
# | 	.section	.rodata.gcc_except_table,"",@
# | 	.p2align	2, 0x0
# | GCC_except_table17:
# | .Lexception2:
# | 	.int8	255                             # @LPStart Encoding = omit
# | 	.int8	0                               # @TType Encoding = absptr
# | 	.uleb128 .Lttbase2-.Lttbaseref2
# | .Lttbaseref2:
# | 	.int8	1                               # Call site Encoding = uleb128
# | 	.uleb128 .Lcst_end2-.Lcst_begin2
# | .Lcst_begin2:
# | 	.int8	0                               # >> Call Site 0 <<
# |                                         #   On exception at call site 0
# | 	.int8	1                               #   Action: 1
# | .Lcst_end2:
# | 	.int8	1                               # >> Action Record 1 <<
# |                                         #   Catch TypeInfo 1
# | 	.int8	0                               #   No further actions
# | 	.p2align	2, 0x0
# |                                         # >> Catch TypeInfos <<
# | 	.int32	_ZTI7MyClass                    # TypeInfo 1
# | .Lttbase2:
# | 	.p2align	2, 0x0
# | .LGCC_except_table_end2:
# | 	.size	GCC_except_table17, .LGCC_except_table_end2-GCC_except_table17
# |                                         # -- End function
# | 	.section	.text.loop_contains_exception,"",@
# | 	.globl	loop_contains_exception         # -- Begin function loop_contains_exception
# | 	.type	loop_contains_exception, at function
# | loop_contains_exception:                # @loop_contains_exception
# | .Lfunc_begin18:
# | 	.functype	loop_contains_exception (i32) -> ()
# | 	.local  	i32, i32
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	local.set	1
# | .LBB18_1:                               # %while.cond
# |                                         # =>This Inner Loop Header: Depth=1
# | 	block   	
# | 	loop    	                                # label108:
# | 	local.get	0
# | 	i32.eqz
# | 	br_if   	1                               # 1: down to label107
# | # %bb.2:                                # %while.body
# |                                         #   in Loop: Header=BB18_1 Depth=1
# | .Ltmp92:                                # EH_LABEL
# | 	local.get	0
# | 	i32.const	-1
# | 	i32.add 
# | 	local.set	0
# | 	block   	i32
# | 	try_table 	 (catch __cpp_exception 0) # 0: down to label109
# | 	call	foo
# | .Ltmp93:                                # EH_LABEL
# | 	br      	3                               # 3: down to label107
# | # %bb.3:
# | 	end_try_table                           # label110:
# | 	unreachable
# | .LBB18_4:                               # %catch.start
# |                                         #   in Loop: Header=BB18_1 Depth=1
# | 	end_block                               # label109:
# | .Ltmp94:                                # EH_LABEL
# | 	local.set	2
# | 	local.get	1
# | 	global.set	__stack_pointer
# | 	local.get	2
# | 	call	__cxa_begin_catch
# | 	drop
# | 	block   	
# | 	block   	
# | 	try_table 	 (catch_all 0)          # 0: down to label112
# | .Ltmp95:                                # EH_LABEL
# | 	call	__cxa_end_catch
# | .Ltmp96:                                # EH_LABEL
# | 	br      	2                               # 2: down to label111
# | # %bb.5:
# | 	end_try_table                           # label113:
# | 	unreachable
# | .LBB18_6:                               # %ehcleanup
# | 	end_block                               # label112:
# | .Ltmp97:                                # EH_LABEL
# | 	local.get	1
# | 	global.set	__stack_pointer
# | 	call	_ZSt9terminatev
# | 	unreachable
# | .LBB18_7:                               # %invoke.cont
# |                                         #   in Loop: Header=BB18_1 Depth=1
# | 	end_block                               # label111:
# | 	br      	0                               # 0: up to label108
# | .LBB18_8:                               # %while.end
# | 	end_loop
# | 	end_block                               # label107:
# | 	return
# | 	end_function
# | .Lfunc_end18:
# |                                         # -- End function
# | 	.section	.text.wasm_eh_func_info_regression_test,"",@
# | 	.globl	wasm_eh_func_info_regression_test # -- Begin function wasm_eh_func_info_regression_test
# | 	.type	wasm_eh_func_info_regression_test, at function
# | wasm_eh_func_info_regression_test:      # @wasm_eh_func_info_regression_test
# | .Lfunc_begin19:
# | 	.functype	wasm_eh_func_info_regression_test () -> ()
# | 	.local  	i32, i32, exnref
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	block   	
# | 	block   	exnref
# | 	try_table 	 (catch_all_ref 0)      # 0: down to label115
# | 	block   	i32
# | 	try_table 	 (catch __cpp_exception 0) # 0: down to label117
# | .Ltmp98:                                # EH_LABEL
# | 	call	foo
# | .Ltmp99:                                # EH_LABEL
# | 	br      	4                               # 4: down to label114
# | # %bb.1:
# | 	end_try_table                           # label118:
# | 	unreachable
# | .LBB19_2:                               # %catch.start
# | 	end_block                               # label117:
# | .Ltmp100:                               # EH_LABEL
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table19
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	0
# | 	i32.store	__wasm_lpad_context
# | 	local.get	1
# | 	call	_Unwind_CallPersonality
# | 	drop
# | .Ltmp101:                               # EH_LABEL
# | 	block   	exnref
# | 	try_table 	 (catch_all_ref 0)      # 0: down to label119
# | 	block   	
# | 	block   	i32
# | 	try_table 	 (catch __cpp_exception 0) # 0: down to label122
# | 	i32.const	0
# | 	i32.const	0
# | 	i32.const	0
# | 	call	__cxa_throw
# | .Ltmp102:                               # EH_LABEL
# | 	br      	2                               # 2: down to label121
# | # %bb.3:
# | 	end_try_table                           # label123:
# | 	unreachable
# | .LBB19_4:                               # %catch.start3
# | 	end_block                               # label122:
# | .Ltmp103:                               # EH_LABEL
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table19
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	1
# | 	i32.store	__wasm_lpad_context
# | 	local.get	1
# | 	call	_Unwind_CallPersonality
# | 	drop
# | # %bb.5:                                # %try.cont
# | .Ltmp104:                               # EH_LABEL
# | 	call	foo
# | .Ltmp105:                               # EH_LABEL
# | # %bb.6:                                # %invoke.cont8
# | .Ltmp106:                               # EH_LABEL
# | 	block   	i32
# | 	try_table 	 (catch __cpp_exception 0) # 0: down to label124
# | 	i32.const	0
# | 	i32.const	0
# | 	i32.const	0
# | 	call	__cxa_throw
# | .Ltmp107:                               # EH_LABEL
# | 	br      	2                               # 2: down to label121
# | # %bb.7:
# | 	end_try_table                           # label125:
# | 	unreachable
# | .LBB19_8:                               # %catch.start12
# | 	end_block                               # label124:
# | .Ltmp108:                               # EH_LABEL
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table19
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	2
# | 	i32.store	__wasm_lpad_context
# | 	local.get	1
# | 	call	_Unwind_CallPersonality
# | 	drop
# | 	unreachable
# | .LBB19_9:                               # %unreachable
# | 	end_block                               # label121:
# | 	unreachable
# | # %bb.10:
# | 	end_try_table                           # label120:
# | 	unreachable
# | .LBB19_11:                              # %ehcleanup
# | 	end_block                               # label119:
# | .Ltmp109:                               # EH_LABEL
# | 	local.set	2
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	local.get	2
# | 	throw_ref
# | # %bb.12:
# | 	end_try_table                           # label116:
# | 	unreachable
# | .LBB19_13:                              # %ehcleanup22
# | 	end_block                               # label115:
# | .Ltmp110:                               # EH_LABEL
# | 	local.set	2
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	local.get	2
# | 	throw_ref
# | .LBB19_14:                              # %invoke.cont
# | 	end_block                               # label114:
# | 	unreachable
# | 	end_function
# | .Lfunc_end19:
# | 	.section	.rodata.gcc_except_table,"",@
# | 	.p2align	2, 0x0
# | GCC_except_table19:
# | .Lexception3:
# | 	.int8	255                             # @LPStart Encoding = omit
# | 	.int8	0                               # @TType Encoding = absptr
# | 	.uleb128 .Lttbase3-.Lttbaseref3
# | .Lttbaseref3:
# | 	.int8	1                               # Call site Encoding = uleb128
# | 	.uleb128 .Lcst_end3-.Lcst_begin3
# | .Lcst_begin3:
# | 	.int8	0                               # >> Call Site 0 <<
# |                                         #   On exception at call site 0
# | 	.int8	1                               #   Action: 1
# | 	.int8	1                               # >> Call Site 1 <<
# |                                         #   On exception at call site 1
# | 	.int8	1                               #   Action: 1
# | 	.int8	2                               # >> Call Site 2 <<
# |                                         #   On exception at call site 2
# | 	.int8	1                               #   Action: 1
# | .Lcst_end3:
# | 	.int8	1                               # >> Action Record 1 <<
# |                                         #   Catch TypeInfo 1
# | 	.int8	0                               #   No further actions
# | 	.p2align	2, 0x0
# |                                         # >> Catch TypeInfos <<
# | 	.int32	_ZTIi                           # TypeInfo 1
# | .Lttbase3:
# | 	.p2align	2, 0x0
# | .LGCC_except_table_end3:
# | 	.size	GCC_except_table19, .LGCC_except_table_end3-GCC_except_table19
# |                                         # -- End function
# | 	.section	.text.exception_grouping_0,"",@
# | 	.globl	exception_grouping_0            # -- Begin function exception_grouping_0
# | 	.type	exception_grouping_0, at function
# | exception_grouping_0:                   # @exception_grouping_0
# | .Lfunc_begin20:
# | 	.functype	exception_grouping_0 () -> ()
# | 	.local  	i32, i32, exnref, exnref
# | # %bb.0:                                # %entry
# | 	block   	exnref
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	i32.const	4
# | 	call	__cxa_allocate_exception
# | 	local.tee	1
# | 	i32.const	0
# | 	i32.store	0
# | .Ltmp111:                               # EH_LABEL
# | 	block   	
# | 	block   	
# | 	block   	() -> (i32, exnref)
# | 	try_table 	 (catch_ref __cpp_exception 0) # 0: down to label129
# | 	block   	() -> (i32, exnref)
# | 	try_table 	 (catch_ref __cpp_exception 0) # 0: down to label131
# | 	local.get	1
# | 	i32.const	_ZTIi
# | 	i32.const	0
# | 	call	__cxa_throw
# | .Ltmp112:                               # EH_LABEL
# | 	br      	5                               # 5: down to label127
# | # %bb.1:
# | 	end_try_table                           # label132:
# | 	unreachable
# | .LBB20_2:                               # %catch.start
# | 	end_block                               # label131:
# | .Ltmp113:                               # EH_LABEL
# | 	local.set	2
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table20
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	0
# | 	i32.store	__wasm_lpad_context
# | 	local.get	1
# | 	call	_Unwind_CallPersonality
# | 	drop
# | 	block   	
# | 	i32.const	8
# | 	i32.load	__wasm_lpad_context
# | 	i32.const	1
# | 	i32.ne  
# | 	br_if   	0                               # 0: down to label133
# | # %bb.3:                                # %catch
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	try_table 	 (catch_all_ref 5)      # 5: down to label126
# | 	call	__cxa_end_catch
# | # %bb.4:
# | 	end_try_table                           # label134:
# | .LBB20_5:
# | 	br      	3                               # 3: down to label128
# | .LBB20_6:                               # %rethrow
# | 	end_block                               # label133:
# | 	local.get	2
# | 	throw_ref
# | # %bb.7:
# | 	end_try_table                           # label130:
# | 	unreachable
# | .LBB20_8:                               # %catch.start2
# | 	end_block                               # label129:
# | .Ltmp114:                               # EH_LABEL
# | 	local.set	2
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table20
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	1
# | 	i32.store	__wasm_lpad_context
# | 	local.get	1
# | 	call	_Unwind_CallPersonality
# | 	drop
# | 	block   	
# | 	i32.const	8
# | 	i32.load	__wasm_lpad_context
# | 	i32.const	1
# | 	i32.ne  
# | 	br_if   	0                               # 0: down to label135
# | # %bb.9:                                # %catch5
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	call	__cxa_end_catch
# | 	br      	1                               # 1: down to label128
# | .LBB20_10:                              # %rethrow4
# | 	end_block                               # label135:
# | 	local.get	2
# | 	throw_ref
# | .LBB20_11:                              # %try.cont8
# | 	end_block                               # label128:
# | 	return
# | .LBB20_12:                              # %unreachable.for.entry
# | 	end_block                               # label127:
# | 	unreachable
# | 	unreachable
# | .LBB20_13:
# | 	end_block                               # label126:
# | 	local.set	3
# | 	local.get	3
# | 	throw_ref
# | 	end_function
# | .Lfunc_end20:
# | 	.section	.rodata.gcc_except_table,"",@
# | 	.p2align	2, 0x0
# | GCC_except_table20:
# | .Lexception4:
# | 	.int8	255                             # @LPStart Encoding = omit
# | 	.int8	0                               # @TType Encoding = absptr
# | 	.uleb128 .Lttbase4-.Lttbaseref4
# | .Lttbaseref4:
# | 	.int8	1                               # Call site Encoding = uleb128
# | 	.uleb128 .Lcst_end4-.Lcst_begin4
# | .Lcst_begin4:
# | 	.int8	0                               # >> Call Site 0 <<
# |                                         #   On exception at call site 0
# | 	.int8	1                               #   Action: 1
# | 	.int8	1                               # >> Call Site 1 <<
# |                                         #   On exception at call site 1
# | 	.int8	1                               #   Action: 1
# | .Lcst_end4:
# | 	.int8	1                               # >> Action Record 1 <<
# |                                         #   Catch TypeInfo 1
# | 	.int8	0                               #   No further actions
# | 	.p2align	2, 0x0
# |                                         # >> Catch TypeInfos <<
# | 	.int32	_ZTIi                           # TypeInfo 1
# | .Lttbase4:
# | 	.p2align	2, 0x0
# | .LGCC_except_table_end4:
# | 	.size	GCC_except_table20, .LGCC_except_table_end4-GCC_except_table20
# |                                         # -- End function
# | 	.section	.text.exception_grouping_1,"",@
# | 	.globl	exception_grouping_1            # -- Begin function exception_grouping_1
# | 	.type	exception_grouping_1, at function
# | exception_grouping_1:                   # @exception_grouping_1
# | .Lfunc_begin21:
# | 	.functype	exception_grouping_1 () -> ()
# | 	.local  	i32, i32, exnref, exnref
# | # %bb.0:                                # %entry
# | 	block   	exnref
# | 	global.get	__stack_pointer
# | 	local.set	0
# | 	block   	
# | 	block   	() -> (i32, exnref)
# | 	try_table 	 (catch_ref __cpp_exception 0) # 0: down to label138
# | 	block   	() -> (i32, exnref)
# | 	try_table 	 (catch_ref __cpp_exception 0) # 0: down to label140
# | 	block   	() -> (i32, exnref)
# | 	try_table 	 (catch_ref __cpp_exception 0) # 0: down to label142
# | .Ltmp115:                               # EH_LABEL
# | 	call	foo
# | .Ltmp116:                               # EH_LABEL
# | # %bb.1:                                # %invoke.cont
# | .Ltmp117:                               # EH_LABEL
# | 	call	foo
# | .Ltmp118:                               # EH_LABEL
# | # %bb.2:                                # %invoke.cont1
# | .Ltmp119:                               # EH_LABEL
# | 	call	foo
# | .Ltmp120:                               # EH_LABEL
# | 	br      	6                               # 6: down to label137
# | # %bb.3:
# | 	end_try_table                           # label143:
# | 	unreachable
# | .LBB21_4:                               # %catch.start
# | 	end_block                               # label142:
# | .Ltmp121:                               # EH_LABEL
# | 	local.set	2
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table21
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	2
# | 	i32.store	__wasm_lpad_context
# | 	local.get	1
# | 	call	_Unwind_CallPersonality
# | 	drop
# | 	block   	
# | 	i32.const	8
# | 	i32.load	__wasm_lpad_context
# | 	i32.const	1
# | 	i32.ne  
# | 	br_if   	0                               # 0: down to label144
# | # %bb.5:                                # %catch
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	try_table 	 (catch_all_ref 6)      # 6: down to label136
# | 	call	__cxa_end_catch
# | # %bb.6:
# | 	end_try_table                           # label145:
# | .LBB21_7:
# | 	br      	5                               # 5: down to label137
# | .LBB21_8:                               # %rethrow
# | 	end_block                               # label144:
# | 	local.get	2
# | 	throw_ref
# | # %bb.9:
# | 	end_try_table                           # label141:
# | 	unreachable
# | .LBB21_10:                              # %catch.start4
# | 	end_block                               # label140:
# | .Ltmp122:                               # EH_LABEL
# | 	local.set	2
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table21
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	1
# | 	i32.store	__wasm_lpad_context
# | 	local.get	1
# | 	call	_Unwind_CallPersonality
# | 	drop
# | 	block   	
# | 	i32.const	8
# | 	i32.load	__wasm_lpad_context
# | 	i32.const	1
# | 	i32.ne  
# | 	br_if   	0                               # 0: down to label146
# | # %bb.11:                               # %catch7
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	try_table 	 (catch_all_ref 4)      # 4: down to label136
# | 	call	__cxa_end_catch
# | # %bb.12:
# | 	end_try_table                           # label147:
# | .LBB21_13:
# | 	br      	3                               # 3: down to label137
# | .LBB21_14:                              # %rethrow6
# | 	end_block                               # label146:
# | 	local.get	2
# | 	throw_ref
# | # %bb.15:
# | 	end_try_table                           # label139:
# | 	unreachable
# | .LBB21_16:                              # %catch.start12
# | 	end_block                               # label138:
# | .Ltmp123:                               # EH_LABEL
# | 	local.set	2
# | 	local.set	1
# | 	local.get	0
# | 	global.set	__stack_pointer
# | 	i32.const	4
# | 	i32.const	GCC_except_table21
# | 	i32.store	__wasm_lpad_context
# | 	i32.const	0
# | 	i32.const	0
# | 	i32.store	__wasm_lpad_context
# | 	local.get	1
# | 	call	_Unwind_CallPersonality
# | 	drop
# | 	block   	
# | 	i32.const	8
# | 	i32.load	__wasm_lpad_context
# | 	i32.const	1
# | 	i32.ne  
# | 	br_if   	0                               # 0: down to label148
# | # %bb.17:                               # %catch15
# | 	local.get	1
# | 	call	__cxa_begin_catch
# | 	drop
# | 	call	__cxa_end_catch
# | 	br      	1                               # 1: down to label137
# | .LBB21_18:                              # %rethrow14
# | 	end_block                               # label148:
# | 	local.get	2
# | 	throw_ref
# | .LBB21_19:                              # %try.cont18
# | 	end_block                               # label137:
# | 	return
# | 	unreachable
# | .LBB21_20:
# | 	end_block                               # label136:
# | 	local.set	3
# | 	local.get	3
# | 	throw_ref
# | 	end_function
# | .Lfunc_end21:
# | 	.section	.rodata.gcc_except_table,"",@
# | 	.p2align	2, 0x0
# | GCC_except_table21:
# | .Lexception5:
# | 	.int8	255                             # @LPStart Encoding = omit
# | 	.int8	0                               # @TType Encoding = absptr
# | 	.uleb128 .Lttbase5-.Lttbaseref5
# | .Lttbaseref5:
# | 	.int8	1                               # Call site Encoding = uleb128
# | 	.uleb128 .Lcst_end5-.Lcst_begin5
# | .Lcst_begin5:
# | 	.int8	0                               # >> Call Site 0 <<
# |                                         #   On exception at call site 0
# | 	.int8	1                               #   Action: 1
# | 	.int8	1                               # >> Call Site 1 <<
# |                                         #   On exception at call site 1
# | 	.int8	1                               #   Action: 1
# | 	.int8	2                               # >> Call Site 2 <<
# |                                         #   On exception at call site 2
# | 	.int8	1                               #   Action: 1
# | .Lcst_end5:
# | 	.int8	1                               # >> Action Record 1 <<
# |                                         #   Catch TypeInfo 1
# | 	.int8	0                               #   No further actions
# | 	.p2align	2, 0x0
# |                                         # >> Catch TypeInfos <<
# | 	.int32	_ZTIi                           # TypeInfo 1
# | .Lttbase5:
# | 	.p2align	2, 0x0
# | .LGCC_except_table_end5:
# | 	.size	GCC_except_table21, .LGCC_except_table_end5-GCC_except_table21
# |                                         # -- End function
# | 	.section	.text.exception_grouping_2,"",@
# | 	.globl	exception_grouping_2            # -- Begin function exception_grouping_2
# | 	.type	exception_grouping_2, at function
# | exception_grouping_2:                   # @exception_grouping_2
# | 	.functype	exception_grouping_2 () -> ()
# | # %bb.0:                                # %entry
# | 	global.get	__stack_pointer
# | 	drop
# | 	i32.const	4
# | 	call	__cxa_allocate_exception
# | 	drop
# | 	unreachable
# | 	end_function
# |                                         # -- End function
# | 	.no_dead_strip	__indirect_function_table
# | 	.size	_ZTIi, 4
# | 	.size	_ZTId, 4
# | 	.size	_ZTI7MyClass, 8
# | 	.size	__wasm_lpad_context, 12
# | 	.section	.custom_section.target_features,"",@
# | 	.int8	10
# | 	.int8	43
# | 	.int8	11
# | 	.ascii	"bulk-memory"
# | 	.int8	43
# | 	.int8	15
# | 	.ascii	"bulk-memory-opt"
# | 	.int8	43
# | 	.int8	22
# | 	.ascii	"call-indirect-overlong"
# | 	.int8	43
# | 	.int8	18
# | 	.ascii	"exception-handling"
# | 	.int8	43
# | 	.int8	10
# | 	.ascii	"multivalue"
# | 	.int8	43
# | 	.int8	15
# | 	.ascii	"mutable-globals"
# | 	.int8	43
# | 	.int8	19
# | 	.ascii	"nontrapping-fptoint"
# | 	.int8	43
# | 	.int8	15
# | 	.ascii	"reference-types"
# | 	.int8	43
# | 	.int8	8
# | 	.ascii	"sign-ext"
# | 	.int8	45
# | 	.int8	10
# | 	.ascii	"shared-mem"
# | 	.section	.text.exception_grouping_2,"",@
# `-----------------------------
# RUN: at line 4
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/cfg-stackify-eh.ll -O0 -disable-wasm-fallthrough-return-opt -verify-machineinstrs -wasm-enable-eh -wasm-use-legacy-eh=false -exception-model=wasm -mattr=+exception-handling,-bulk-memory,-bulk-memory-opt | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/cfg-stackify-eh.ll --check-prefix=NOOPT
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -O0 -disable-wasm-fallthrough-return-opt -verify-machineinstrs -wasm-enable-eh -wasm-use-legacy-eh=false -exception-model=wasm -mattr=+exception-handling,-bulk-memory,-bulk-memory-opt
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/cfg-stackify-eh.ll --check-prefix=NOOPT
# note: command had no output on stdout or stderr
# RUN: at line 5
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/cfg-stackify-eh.ll -disable-wasm-fallthrough-return-opt -disable-block-placement -verify-machineinstrs -fast-isel=false -machine-sink-split-probability-threshold=0 -cgp-freq-ratio-to-skip-merge=1000 -wasm-enable-eh -wasm-use-legacy-eh=false -exception-model=wasm -mattr=+exception-handling,-bulk-memory,-bulk-memory-opt -wasm-disable-ehpad-sort -stats 2>&1 | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/cfg-stackify-eh.ll --check-prefix=NOSORT
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -disable-wasm-fallthrough-return-opt -disable-block-placement -verify-machineinstrs -fast-isel=false -machine-sink-split-probability-threshold=0 -cgp-freq-ratio-to-skip-merge=1000 -wasm-enable-eh -wasm-use-legacy-eh=false -exception-model=wasm -mattr=+exception-handling,-bulk-memory,-bulk-memory-opt -wasm-disable-ehpad-sort -stats
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/cfg-stackify-eh.ll --check-prefix=NOSORT
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/cfg-stackify-eh.ll:1510:11: error: NOSORT: expected string not found in input
# | ; NOSORT: 23 wasm-cfg-stackify - Number of call unwind mismatches found
# |           ^
# | <stdin>:1484:10: note: scanning from here
# |  end_loop
# |          ^
# | <stdin>:1627:2: note: possible intended match here
# |  # On exception at call site 0
# |  ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/cfg-stackify-eh.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |               .
# |               .
# |               .
# |            1479:  local.get 1 
# |            1480:  global.set __stack_pointer 
# |            1481:  call _ZSt9terminatev 
# |            1482:  unreachable 
# |            1483: .LBB18_9: 
# |            1484:  end_loop 
# | check:1510'0              X error: no match found
# |            1485:  end_function 
# | check:1510'0     ~~~~~~~~~~~~~~
# |            1486: .Lfunc_end18: 
# | check:1510'0     ~~~~~~~~~~~~~~
# |            1487:  # -- End function 
# | check:1510'0     ~~~~~~~~~~~~~~~~~~~
# |            1488:  .section .text.wasm_eh_func_info_regression_test,"",@ 
# | check:1510'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            1489:  .globl wasm_eh_func_info_regression_test # -- Begin function wasm_eh_func_info_regression_test 
# | check:1510'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |               .
# |               .
# |               .
# |            1622: .Lttbaseref3: 
# | check:1510'0     ~~~~~~~~~~~~~~
# |            1623:  .int8 1 # Call site Encoding = uleb128 
# | check:1510'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            1624:  .uleb128 .Lcst_end3-.Lcst_begin3 
# | check:1510'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            1625: .Lcst_begin3: 
# | check:1510'0     ~~~~~~~~~~~~~~
# |            1626:  .int8 0 # >> Call Site 0 << 
# | check:1510'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            1627:  # On exception at call site 0 
# | check:1510'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:1510'1      ?                              possible intended match
# |            1628:  .int8 1 # Action: 1 
# | check:1510'0     ~~~~~~~~~~~~~~~~~~~~~
# |            1629:  .int8 1 # >> Call Site 1 << 
# | check:1510'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            1630:  # On exception at call site 1 
# | check:1510'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            1631:  .int8 1 # Action: 1 
# | check:1510'0     ~~~~~~~~~~~~~~~~~~~~~
# |            1632:  .int8 2 # >> Call Site 2 << 
# | check:1510'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |               .
# |               .
# |               .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>

If these failures are unrelated to your changes (for example tests are broken or flaky at HEAD), please open an issue at https://github.com/llvm/llvm-project/issues and add the `infrastructure` label.

https://github.com/llvm/llvm-project/pull/187484


More information about the llvm-commits mailing list