Lukas =?utf-8?q?Döllerer?= <[email protected]>, Lukas =?utf-8?q?Döllerer?= <[email protected]>, Lukas =?utf-8?q?Döllerer?= <[email protected]>, Lukas =?utf-8?q?Döllerer?= <[email protected]>, Lukas =?utf-8?q?Döllerer?= <[email protected]>, Lukas =?utf-8?q?Döllerer?= <[email protected]>, Lukas =?utf-8?q?Döllerer?= <[email protected]>, Lukas =?utf-8?q?Döllerer?= <[email protected]>, Lukas =?utf-8?q?Döllerer?= <[email protected]>, Lukas =?utf-8?q?Döllerer?= <[email protected]>, Lukas =?utf-8?q?Döllerer?= <[email protected]>, Lukas =?utf-8?q?Döllerer?= <[email protected]>, Lukas =?utf-8?q?Döllerer?= <[email protected]> Message-ID: In-Reply-To: <llvm.org/llvm/llvm-project/pull/[email protected]>
github-actions[bot] wrote: <!--PREMERGE ADVISOR COMMENT: Linux--> # :penguin: Linux x64 Test Results * 166441 tests passed * 2875 tests skipped * 2 tests failed ## Failed Tests (click on a test name to see its output) ### LLVM <details> <summary>LLVM.CodeGen/WebAssembly/exception.ll</summary> ``` Exit Code: -6 Command Output (stdout): -- # RUN: at line 1 /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/exception.ll -asm-verbose=false -wasm-enable-eh -wasm-use-legacy-eh=false -exception-model=wasm -mattr=+exception-handling -verify-machineinstrs | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck --implicit-check-not=ehgcr -allow-deprecated-dag-overlap /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/exception.ll # executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -asm-verbose=false -wasm-enable-eh -wasm-use-legacy-eh=false -exception-model=wasm -mattr=+exception-handling -verify-machineinstrs # note: command had no output on stdout or stderr # executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck --implicit-check-not=ehgcr -allow-deprecated-dag-overlap /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/exception.ll # note: command had no output on stdout or stderr # 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/exception.ll -asm-verbose=false -wasm-enable-eh -wasm-use-legacy-eh=false -exception-model=wasm -mattr=+exception-handling -verify-machineinstrs -O0 # executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -asm-verbose=false -wasm-enable-eh -wasm-use-legacy-eh=false -exception-model=wasm -mattr=+exception-handling -verify-machineinstrs -O0 # .---command stdout------------ # | .file "<stdin>" # | .globaltype __stack_pointer, i32 # | .tagtype __cpp_exception i32 # | .functype throw (i32) -> () # | .functype catch () -> () # | .functype cleanup () -> () # | .functype terminatepad () -> () # | .functype no_prolog_epilog_in_ehpad () -> () # | .functype no_sp_writeback () -> () # | .functype get_exception_wo_use () -> () # | .functype complex_cleanup_region () -> () # | .functype rethrow_terminator () -> () # | .functype inlined_cleanupret () -> () # | .functype invoke_throw (i32) -> () # | .functype unwind_destinations () -> () # | .functype foo () -> () # | .functype bar (i32) -> () # | .functype take_i32 (i32) -> () # | .functype __gxx_wasm_personality_v0 (i32) -> (i32) # | .functype __cxa_allocate_exception (i32) -> (i32) # | .functype __cxa_begin_catch (i32) -> (i32) # | .functype __cxa_end_catch () -> () # | .functype __cxa_throw (i32, i32, i32) -> () # | .functype _ZSt9terminatev () -> () # | .functype _ZN4TempD2Ev (i32) -> (i32) # | .functype _Unwind_CallPersonality (i32) -> (i32) # | .section .text.throw,"",@ # | .globl throw # | .type throw,@function # | throw: # | .functype throw (i32) -> () # | local.get 0 # | throw __cpp_exception # | end_function # | # | .section .text.catch,"",@ # | .globl catch # | .type catch,@function # | catch: # | .Lfunc_begin0: # | .functype catch () -> () # | .local i32, i32, exnref, i32, i32 # | global.get __stack_pointer # | local.set 0 # | block # | block () -> (i32, exnref) # | try_table (catch_ref __cpp_exception 0) # | .Ltmp0: # | call foo # | .Ltmp1: # | br 2 # | end_try_table # | unreachable # | .LBB1_2: # | end_block # | .Ltmp2: # | local.set 2 # | local.set 1 # | local.get 0 # | global.set __stack_pointer # | i32.const 0 # | local.set 3 # | i32.const 0 # | local.get 3 # | i32.store __wasm_lpad_context # | i32.const GCC_except_table1 # | local.set 4 # | i32.const 0 # | local.get 4 # | i32.store __wasm_lpad_context+4 # | local.get 1 # | call _Unwind_CallPersonality # | drop # | block # | i32.const 0 # | i32.load __wasm_lpad_context+8 # | i32.const 1 # | i32.eq # | i32.const 1 # | i32.and # | i32.eqz # | br_if 0 # | local.get 1 # | call __cxa_begin_catch # | drop # | call __cxa_end_catch # | br 1 # | .LBB1_4: # | end_block # | local.get 2 # | throw_ref # | .LBB1_5: # | end_block # | return # | end_function # | .Lfunc_end0: # | .section .rodata.gcc_except_table,"",@ # | .p2align 2, 0x0 # | GCC_except_table1: # | .Lexception0: # | .int8 255 # | .int8 0 # | .uleb128 .Lttbase0-.Lttbaseref0 # | .Lttbaseref0: # | .int8 1 # | .uleb128 .Lcst_end0-.Lcst_begin0 # | .Lcst_begin0: # | .int8 0 # | .int8 1 # | .Lcst_end0: # | .int8 1 # | .int8 0 # | .p2align 2, 0x0 # | .int32 _ZTIi # | .Lttbase0: # | .p2align 2, 0x0 # | .LGCC_except_table_end0: # | .size GCC_except_table1, .LGCC_except_table_end0-GCC_except_table1 # | # | .section .text.cleanup,"",@ # | .globl cleanup # | .type cleanup,@function # | cleanup: # | .Lfunc_begin1: # | .functype cleanup () -> () # | .local i32, exnref # | global.get __stack_pointer # | i32.const 16 # | i32.sub # | local.set 0 # | local.get 0 # | global.set __stack_pointer # | block # | block exnref # | try_table (catch_all_ref 0) # | .Ltmp3: # | call foo # | .Ltmp4: # | br 2 # | end_try_table # | unreachable # | .LBB2_2: # | end_block # | .Ltmp5: # | local.set 1 # | local.get 0 # | global.set __stack_pointer # | local.get 0 # | i32.const 15 # | i32.add # | call _ZN4TempD2Ev # | drop # | local.get 1 # | throw_ref # | .LBB2_3: # | end_block # | local.get 0 # | i32.const 15 # | i32.add # | call _ZN4TempD2Ev # | drop # | local.get 0 # | i32.const 16 # | i32.add # | global.set __stack_pointer # | return # | end_function # | .Lfunc_end1: # | # | .section .text.terminatepad,"",@ # | .globl terminatepad # | .type terminatepad,@function # | terminatepad: # | .Lfunc_begin2: # | .functype terminatepad () -> () # | .local i32, i32, exnref # | global.get __stack_pointer # | local.set 0 # | block # | block i32 # | try_table (catch __cpp_exception 0) # | .Ltmp6: # | call foo # | .Ltmp7: # | br 2 # | end_try_table # | unreachable # | .LBB3_2: # | end_block # | .Ltmp8: # | local.set 1 # | local.get 0 # | global.set __stack_pointer # | local.get 1 # | call __cxa_begin_catch # | drop # | block # | block exnref # | try_table (catch_all_ref 0) # | .Ltmp9: # | call foo # | .Ltmp10: # | br 2 # | end_try_table # | unreachable # | .LBB3_4: # | end_block # | .Ltmp11: # | .Ltmp12: # | local.set 2 # | local.get 0 # | global.set __stack_pointer # | block # | block # | try_table (catch_all 0) # | call __cxa_end_catch # | .Ltmp13: # | br 2 # | end_try_table # | unreachable # | .LBB3_6: # | end_block # | .Ltmp14: # | local.get 0 # | global.set __stack_pointer # | call _ZSt9terminatev # | unreachable # | .LBB3_7: # | end_block # | local.get 2 # | throw_ref # | .LBB3_8: # | end_block # | call __cxa_end_catch # | .LBB3_9: # | end_block # | return # | end_function # | .Lfunc_end2: # | # | .section .text.no_prolog_epilog_in_ehpad,"",@ # | .globl no_prolog_epilog_in_ehpad # | .type no_prolog_epilog_in_ehpad,@function # | no_prolog_epilog_in_ehpad: # | .Lfunc_begin3: # | .functype no_prolog_epilog_in_ehpad () -> () # | .local i32, i32, exnref, i32, i32, exnref # | global.get __stack_pointer # | i32.const 16 # | i32.sub # | local.set 0 # | local.get 0 # | global.set __stack_pointer # | local.get 0 # | i32.const 12 # | i32.add # | call bar # | block # | block () -> (i32, exnref) # | try_table (catch_ref __cpp_exception 0) # | .Ltmp15: # | call foo # | .Ltmp16: # | br 2 # | end_try_table # | unreachable # | .LBB4_2: # | end_block # | .Ltmp17: # | local.set 2 # | local.set 1 # | local.get 0 # | global.set __stack_pointer # | i32.const 0 # | local.set 3 # | i32.const 0 # | local.get 3 # | i32.store __wasm_lpad_context # | i32.const GCC_except_table4 # | local.set 4 # | i32.const 0 # | local.get 4 # | i32.store __wasm_lpad_context+4 # | local.get 1 # | call _Unwind_CallPersonality # | drop # | block # | block # | i32.const 0 # | i32.load __wasm_lpad_context+8 # | i32.const 1 # | i32.eq # | i32.const 1 # | i32.and # | i32.eqz # | br_if 0 # | local.get 1 # | call __cxa_begin_catch # | drop # | block exnref # | try_table (catch_all_ref 0) # | .Ltmp18: # | call foo # | .Ltmp19: # | br 3 # | end_try_table # | unreachable # | .LBB4_5: # | end_block # | .Ltmp20: # | local.set 5 # | local.get 0 # | global.set __stack_pointer # | call __cxa_end_catch # | local.get 5 # | throw_ref # | .LBB4_6: # | end_block # | local.get 2 # | throw_ref # | .LBB4_7: # | end_block # | call __cxa_end_catch # | .LBB4_8: # | end_block # | local.get 0 # | i32.const 16 # | i32.add # | global.set __stack_pointer # | return # | end_function # | .Lfunc_end3: # | .section .rodata.gcc_except_table,"",@ # | .p2align 2, 0x0 # | GCC_except_table4: # | .Lexception1: # | .int8 255 # | .int8 0 # | .uleb128 .Lttbase1-.Lttbaseref1 # | .Lttbaseref1: # | .int8 1 # | .uleb128 .Lcst_end1-.Lcst_begin1 # | .Lcst_begin1: # | .int8 0 # | .int8 1 # | .Lcst_end1: # | .int8 1 # | .int8 0 # | .p2align 2, 0x0 # | .int32 _ZTIi # | .Lttbase1: # | .p2align 2, 0x0 # | .LGCC_except_table_end1: # | .size GCC_except_table4, .LGCC_except_table_end1-GCC_except_table4 # | # | .section .text.no_sp_writeback,"",@ # | .globl no_sp_writeback # | .type no_sp_writeback,@function # | no_sp_writeback: # | .Lfunc_begin4: # | .functype no_sp_writeback () -> () # | .local i32, i32 # | global.get __stack_pointer # | local.set 0 # | block # | block i32 # | try_table (catch __cpp_exception 0) # | .Ltmp21: # | call foo # | .Ltmp22: # | br 2 # | end_try_table # | unreachable # | .LBB5_2: # | end_block # | .Ltmp23: # | local.set 1 # | local.get 0 # | global.set __stack_pointer # | local.get 1 # | call __cxa_begin_catch # | drop # | call __cxa_end_catch # | .LBB5_3: # | end_block # | return # | end_function # | .Lfunc_end4: # | # | .section .text.get_exception_wo_use,"",@ # | .globl get_exception_wo_use # | .type get_exception_wo_use,@function # | get_exception_wo_use: # | .Lfunc_begin5: # | .functype get_exception_wo_use () -> () # | .local i32 # | global.get __stack_pointer # | local.set 0 # | block # | block i32 # | try_table (catch __cpp_exception 0) # | .Ltmp24: # | call foo # | .Ltmp25: # | br 2 # | end_try_table # | unreachable # | .LBB6_2: # | end_block # | .Ltmp26: # | drop # | local.get 0 # | global.set __stack_pointer # | .LBB6_3: # | end_block # | return # | end_function # | .Lfunc_end5: # | # | .section .text.complex_cleanup_region,"",@ # | .globl complex_cleanup_region # | .type complex_cleanup_region,@function # | complex_cleanup_region: # | .Lfunc_begin6: # | .functype complex_cleanup_region () -> () # | .local i32, exnref # | global.get __stack_pointer # | local.set 0 # | block # | block exnref # | try_table (catch_all_ref 0) # | .Ltmp27: # | call foo # | .Ltmp28: # | br 2 # | end_try_table # | unreachable # | .LBB7_2: # | end_block # | .Ltmp29: # | .Ltmp30: # | local.set 1 # | local.get 0 # | global.set __stack_pointer # | block # | block # | try_table (catch_all 0) # | block i32 # | try_table (catch __cpp_exception 0) # | call foo # | .Ltmp31: # | br 4 # | end_try_table # | unreachable # | .LBB7_4: # | end_block # | .Ltmp32: # | drop # | local.get 0 # | global.set __stack_pointer # | br 2 # | end_try_table # | unreachable # | .LBB7_6: # | end_block # | .Ltmp33: # | local.get 0 # | global.set __stack_pointer # | unreachable # | .LBB7_7: # | end_block # | local.get 1 # | throw_ref # | .LBB7_8: # | end_block # | return # | end_function # | .Lfunc_end6: # | # | .section .text.rethrow_terminator,"",@ # | .globl rethrow_terminator # | .type rethrow_terminator,@function # | rethrow_terminator: # | .Lfunc_begin7: # | .functype rethrow_terminator () -> () # | .local i32, i32, exnref, i32, i32, exnref, exnref # | block exnref # | global.get __stack_pointer # | i32.const 16 # | i32.sub # | local.set 0 # | local.get 0 # | global.set __stack_pointer # | local.get 0 # | i32.const 10 # | i32.store 12 # | block # | block exnref # | try_table (catch_all_ref 0) # | block () -> (i32, exnref) # | try_table (catch_ref __cpp_exception 0) # | .Ltmp34: # | call foo # | .Ltmp35: # | br 4 # | end_try_table # | unreachable # | .LBB8_2: # | end_block # | .Ltmp36: # | local.set 2 # | local.set 1 # | local.get 0 # | global.set __stack_pointer # | i32.const 0 # | local.set 3 # | i32.const 0 # | local.get 3 # | i32.store __wasm_lpad_context # | i32.const GCC_except_table8 # | local.set 4 # | i32.const 0 # | local.get 4 # | i32.store __wasm_lpad_context+4 # | local.get 1 # | call _Unwind_CallPersonality # | drop # | block # | i32.const 0 # | i32.load __wasm_lpad_context+8 # | i32.const 1 # | i32.eq # | i32.const 1 # | i32.and # | i32.eqz # | br_if 0 # | local.get 1 # | call __cxa_begin_catch # | drop # | try_table (catch_all_ref 4) # | call __cxa_end_catch # | end_try_table # | .LBB8_5: # | br 3 # | .LBB8_6: # | end_block # | local.get 0 # | i32.const 20 # | i32.store 12 # | local.get 2 # | throw_ref # | end_try_table # | unreachable # | .LBB8_8: # | end_block # | .Ltmp37: # | local.set 5 # | local.get 0 # | global.set __stack_pointer # | local.get 0 # | i32.load 12 # | call take_i32 # | local.get 5 # | throw_ref # | .LBB8_9: # | end_block # | local.get 0 # | i32.const 16 # | i32.add # | global.set __stack_pointer # | return # | unreachable # | .LBB8_10: # | end_block # | local.set 6 # | local.get 6 # | throw_ref # | end_function # | .Lfunc_end7: # | .section .rodata.gcc_except_table,"",@ # | .p2align 2, 0x0 # | GCC_except_table8: # | .Lexception2: # | .int8 255 # | .int8 0 # | .uleb128 .Lttbase2-.Lttbaseref2 # | .Lttbaseref2: # | .int8 1 # | .uleb128 .Lcst_end2-.Lcst_begin2 # | .Lcst_begin2: # | .int8 0 # | .int8 1 # | .Lcst_end2: # | .int8 1 # | .int8 0 # | .p2align 2, 0x0 # | .int32 _ZTIi # | .Lttbase2: # | .p2align 2, 0x0 # | .LGCC_except_table_end2: # | .size GCC_except_table8, .LGCC_except_table_end2-GCC_except_table8 # | # | .section .text.inlined_cleanupret,"",@ # | .globl inlined_cleanupret # | .type inlined_cleanupret,@function # | inlined_cleanupret: # | .Lfunc_begin8: # | .functype inlined_cleanupret () -> () # | .local i32, i32, exnref, i32, i32, i32, exnref # | block exnref # | global.get __stack_pointer # | local.set 0 # | i32.const 4 # | call __cxa_allocate_exception # | local.set 1 # | local.get 1 # | i32.const 2 # | i32.store 0 # | .Ltmp38: # | block # | block exnref # | try_table (catch_all_ref 0) # | local.get 1 # | i32.const _ZTIi # | i32.const 0 # | call __cxa_throw # | .Ltmp39: # | br 2 # | end_try_table # | unreachable # | .LBB9_2: # | end_block # | .Ltmp40: # | local.set 2 # | local.get 0 # | global.set __stack_pointer # | i32.const 4 # | call __cxa_allocate_exception # | local.set 3 # | local.get 3 # | i32.const 1 # | i32.store 0 # | .Ltmp41: # | block # | try_table (catch_all 0) # | block # | block i32 # | try_table (catch __cpp_exception 0) # | local.get 3 # | i32.const _ZTIi # | i32.const 0 # | call __cxa_throw # | .Ltmp42: # | br 2 # | end_try_table # | unreachable # | .LBB9_4: # | end_block # | .Ltmp43: # | local.set 4 # | local.get 0 # | global.set __stack_pointer # | local.get 4 # | call __cxa_begin_catch # | drop # | .Ltmp44: # | call __cxa_end_catch # | .Ltmp45: # | block i32 # | try_table (catch_all_ref 5) # | try_table (catch __cpp_exception 1) # | local.get 2 # | throw_ref # | end_try_table # | end_try_table # | .LBB9_9: # | unreachable # | .LBB9_10: # | end_block # | .Ltmp46: # | local.set 5 # | local.get 0 # | global.set __stack_pointer # | local.get 5 # | call __cxa_begin_catch # | drop # | try_table (catch_all_ref 4) # | call __cxa_end_catch # | end_try_table # | .LBB9_12: # | return # | .LBB9_13: # | end_block # | unreachable # | end_try_table # | unreachable # | .LBB9_15: # | end_block # | .Ltmp47: # | local.get 0 # | global.set __stack_pointer # | call _ZSt9terminatev # | unreachable # | .LBB9_16: # | end_block # | unreachable # | unreachable # | .LBB9_17: # | end_block # | local.set 6 # | local.get 6 # | throw_ref # | end_function # | .Lfunc_end8: # | # | .section .text.invoke_throw,"",@ # | .globl invoke_throw # | .type invoke_throw,@function # | invoke_throw: # | .Lfunc_begin9: # | .functype invoke_throw (i32) -> () # | .local i32, i32 # | global.get __stack_pointer # | local.set 1 # | block i32 # | try_table (catch __cpp_exception 0) # | local.get 0 # | throw __cpp_exception # | end_try_table # | unreachable # | .LBB10_2: # | end_block # | .Ltmp48: # | local.set 2 # | local.get 1 # | global.set __stack_pointer # | local.get 2 # | call __cxa_begin_catch # | drop # | call __cxa_end_catch # | return # | end_function # | .Lfunc_end9: # | # | .section .text.unwind_destinations,"",@ # | .globl unwind_destinations # | .type unwind_destinations,@function # | unwind_destinations: # | .Lfunc_begin10: # | .functype unwind_destinations () -> () # | .local i32, i32 # | global.get __stack_pointer # | local.set 0 # | block # | block # | try_table (catch_all 0) # | block i32 # | try_table (catch __cpp_exception 0) # | .Ltmp49: # | call foo # | .Ltmp50: # | br 4 # | end_try_table # | unreachable # | .LBB11_2: # | end_block # | .Ltmp51: # | local.set 1 # | local.get 0 # | global.set __stack_pointer # | local.get 1 # | call __cxa_begin_catch # | drop # | call _ZSt9terminatev # | unreachable # | end_try_table # | unreachable # | .LBB11_4: # | end_block # | .Ltmp52: # | local.get 0 # | global.set __stack_pointer # | call _ZSt9terminatev # | unreachable # | .LBB11_5: # | end_block # | return # | end_function # | .Lfunc_end10: # | # | .no_dead_strip __indirect_function_table # | .size _ZTIi, 4 # | .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.unwind_destinations,"",@ # `----------------------------- # 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/exception.ll -wasm-enable-eh -wasm-use-legacy-eh=false -exception-model=wasm -mattr=+exception-handling # executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -wasm-enable-eh -wasm-use-legacy-eh=false -exception-model=wasm -mattr=+exception-handling # .---command stdout------------ # | .file "<stdin>" # | .globaltype __stack_pointer, i32 # | .tagtype __cpp_exception i32 # | .functype throw (i32) -> () # | .functype catch () -> () # | .functype cleanup () -> () # | .functype terminatepad () -> () # | .functype no_prolog_epilog_in_ehpad () -> () # | .functype no_sp_writeback () -> () # | .functype get_exception_wo_use () -> () # | .functype complex_cleanup_region () -> () # | .functype rethrow_terminator () -> () # | .functype inlined_cleanupret () -> () # | .functype invoke_throw (i32) -> () # | .functype unwind_destinations () -> () # | .functype foo () -> () # | .functype bar (i32) -> () # | .functype take_i32 (i32) -> () # | .functype __gxx_wasm_personality_v0 (i32) -> (i32) # | .functype __cxa_allocate_exception (i32) -> (i32) # | .functype __cxa_begin_catch (i32) -> (i32) # | .functype __cxa_end_catch () -> () # | .functype __cxa_throw (i32, i32, i32) -> () # | .functype _ZSt9terminatev () -> () # | .functype _ZN4TempD2Ev (i32) -> (i32) # | .functype _Unwind_CallPersonality (i32) -> (i32) # | .section .text.throw,"",@ # | .globl throw # -- Begin function throw # | .type throw,@function # | throw: # @throw # | .functype throw (i32) -> () # | # %bb.0: # | local.get 0 # | throw __cpp_exception # | end_function # | # -- End function # | .section .text.catch,"",@ # | .globl catch # -- Begin function catch # | .type catch,@function # | catch: # @catch # | .Lfunc_begin0: # | .functype catch () -> () # | .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 # | .LBB1_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_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 # | i32.const 8 # | i32.load __wasm_lpad_context # | i32.const 1 # | i32.ne # | br_if 0 # 0: down to label3 # | # %bb.3: # %catch # | local.get 1 # | call __cxa_begin_catch # | drop # | call __cxa_end_catch # | br 1 # 1: down to label0 # | .LBB1_4: # %rethrow # | end_block # label3: # | local.get 2 # | throw_ref # | .LBB1_5: # %try.cont # | end_block # label0: # | # fallthrough-return # | end_function # | .Lfunc_end0: # | .section .rodata.gcc_except_table,"",@ # | .p2align 2, 0x0 # | GCC_except_table1: # | .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 1 # Action: 1 # | .Lcst_end0: # | .int8 1 # >> Action Record 1 << # | # Catch TypeInfo 1 # | .int8 0 # No further actions # | .p2align 2, 0x0 # | # >> Catch TypeInfos << # | .int32 _ZTIi # TypeInfo 1 # | .Lttbase0: # | .p2align 2, 0x0 # | .LGCC_except_table_end0: # | .size GCC_except_table1, .LGCC_except_table_end0-GCC_except_table1 # | # -- End function # | .section .text.cleanup,"",@ # | .globl cleanup # -- Begin function cleanup # | .type cleanup,@function # | cleanup: # @cleanup # | .Lfunc_begin1: # | .functype cleanup () -> () # | .local i32, exnref # | # %bb.0: # %entry # | global.get __stack_pointer # | i32.const 16 # | i32.sub # | local.tee 0 # | global.set __stack_pointer # | block # | block exnref # | try_table (catch_all_ref 0) # 0: down to label5 # | .Ltmp3: # EH_LABEL # | call foo # | .Ltmp4: # EH_LABEL # | br 2 # 2: down to label4 # | # %bb.1: # | end_try_table # label6: # | unreachable # | .LBB2_2: # %ehcleanup # | end_block # label5: # | .Ltmp5: # EH_LABEL # | local.set 1 # | local.get 0 # | global.set __stack_pointer # | local.get 0 # | i32.const 15 # | i32.add # | call _ZN4TempD2Ev # | drop # | local.get 1 # | throw_ref # | .LBB2_3: # %invoke.cont # | end_block # label4: # | local.get 0 # | i32.const 15 # | i32.add # | call _ZN4TempD2Ev # | drop # | local.get 0 # | i32.const 16 # | i32.add # | global.set __stack_pointer # | # fallthrough-return # | end_function # | .Lfunc_end1: # | # -- End function # | .section .text.terminatepad,"",@ # | .globl terminatepad # -- Begin function terminatepad # | .type terminatepad,@function # | terminatepad: # @terminatepad # | .Lfunc_begin2: # | .functype terminatepad () -> () # | .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 label8 # | .Ltmp6: # EH_LABEL # | call foo # | .Ltmp7: # EH_LABEL # | br 2 # 2: down to label7 # | # %bb.1: # | end_try_table # label9: # | unreachable # | .LBB3_2: # %catch.start # | end_block # label8: # | .Ltmp8: # EH_LABEL # | local.set 1 # | local.get 0 # | global.set __stack_pointer # | local.get 1 # | call __cxa_begin_catch # | drop # | block # | block exnref # | try_table (catch_all_ref 0) # 0: down to label11 # | .Ltmp9: # EH_LABEL # | call foo # | .Ltmp10: # EH_LABEL # | br 2 # 2: down to label10 # | # %bb.3: # | end_try_table # label12: # | unreachable # | .LBB3_4: # %ehcleanup # | end_block # label11: # | .Ltmp11: # EH_LABEL # | .Ltmp12: # EH_LABEL # | local.set 2 # | local.get 0 # | global.set __stack_pointer # | block # | block # | try_table (catch_all 0) # 0: down to label14 # | call __cxa_end_catch # | .Ltmp13: # EH_LABEL # | br 2 # 2: down to label13 # | # %bb.5: # | end_try_table # label15: # | unreachable # | .LBB3_6: # %terminate # | end_block # label14: # | .Ltmp14: # EH_LABEL # | local.get 0 # | global.set __stack_pointer # | call _ZSt9terminatev # | unreachable # | .LBB3_7: # %invoke.cont2 # | end_block # label13: # | local.get 2 # | throw_ref # | .LBB3_8: # %invoke.cont1 # | end_block # label10: # | call __cxa_end_catch # | .LBB3_9: # %try.cont # | end_block # label7: # | # fallthrough-return # | end_function # | .Lfunc_end2: # | # -- End function # | .section .text.no_prolog_epilog_in_ehpad,"",@ # | .globl no_prolog_epilog_in_ehpad # -- Begin function no_prolog_epilog_in_ehpad # | .type no_prolog_epilog_in_ehpad,@function # | no_prolog_epilog_in_ehpad: # @no_prolog_epilog_in_ehpad # | .Lfunc_begin3: # | .functype no_prolog_epilog_in_ehpad () -> () # | .local i32, i32, exnref # | # %bb.0: # %entry # | global.get __stack_pointer # | i32.const 16 # | i32.sub # | local.tee 0 # | global.set __stack_pointer # | local.get 0 # | i32.const 12 # | i32.add # | call bar # | block # | block () -> (i32, exnref) # | try_table (catch_ref __cpp_exception 0) # 0: down to label17 # | .Ltmp15: # EH_LABEL # | call foo # | .Ltmp16: # EH_LABEL # | br 2 # 2: down to label16 # | # %bb.1: # | end_try_table # label18: # | unreachable # | .LBB4_2: # %catch.start # | end_block # label17: # | .Ltmp17: # EH_LABEL # | local.set 2 # | local.set 1 # | local.get 0 # | global.set __stack_pointer # | i32.const 4 # | i32.const GCC_except_table4 # | 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 label20 # | # %bb.3: # %catch # | local.get 1 # | call __cxa_begin_catch # | drop # | block exnref # | try_table (catch_all_ref 0) # 0: down to label21 # | .Ltmp18: # EH_LABEL # | call foo # | .Ltmp19: # EH_LABEL # | br 3 # 3: down to label19 # | # %bb.4: # | end_try_table # label22: # | unreachable # | .LBB4_5: # %ehcleanup # | end_block # label21: # | .Ltmp20: # EH_LABEL # | local.set 2 # | local.get 0 # | global.set __stack_pointer # | call __cxa_end_catch # | local.get 2 # | throw_ref # | .LBB4_6: # %rethrow # | end_block # label20: # | local.get 2 # | throw_ref # | .LBB4_7: # %invoke.cont1 # | end_block # label19: # | call __cxa_end_catch # | .LBB4_8: # %try.cont # | end_block # label16: # | local.get 0 # | i32.const 16 # | i32.add # | global.set __stack_pointer # | # fallthrough-return # | end_function # | .Lfunc_end3: # | .section .rodata.gcc_except_table,"",@ # | .p2align 2, 0x0 # | GCC_except_table4: # | .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 # | .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_table4, .LGCC_except_table_end1-GCC_except_table4 # | # -- End function # | .section .text.no_sp_writeback,"",@ # | .globl no_sp_writeback # -- Begin function no_sp_writeback # | .type no_sp_writeback,@function # | no_sp_writeback: # @no_sp_writeback # | .Lfunc_begin4: # | .functype no_sp_writeback () -> () # | .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 label24 # | .Ltmp21: # EH_LABEL # | call foo # | .Ltmp22: # EH_LABEL # | br 2 # 2: down to label23 # | # %bb.1: # | end_try_table # label25: # | unreachable # | .LBB5_2: # %catch.start # | end_block # label24: # | .Ltmp23: # EH_LABEL # | local.set 1 # | local.get 0 # | global.set __stack_pointer # | local.get 1 # | call __cxa_begin_catch # | drop # | call __cxa_end_catch # | .LBB5_3: # %try.cont # | end_block # label23: # | # fallthrough-return # | end_function # | .Lfunc_end4: # | # -- End function # | .section .text.get_exception_wo_use,"",@ # | .globl get_exception_wo_use # -- Begin function get_exception_wo_use # | .type get_exception_wo_use,@function # | get_exception_wo_use: # @get_exception_wo_use # | .Lfunc_begin5: # | .functype get_exception_wo_use () -> () # | .local i32 # | # %bb.0: # %entry # | global.get __stack_pointer # | local.set 0 # | block # | block i32 # | try_table (catch __cpp_exception 0) # 0: down to label27 # | .Ltmp24: # EH_LABEL # | call foo # | .Ltmp25: # EH_LABEL # | br 2 # 2: down to label26 # | # %bb.1: # | end_try_table # label28: # | unreachable # | .LBB6_2: # %catch.start # | end_block # label27: # | .Ltmp26: # EH_LABEL # | drop # | local.get 0 # | global.set __stack_pointer # | .LBB6_3: # %try.cont # | end_block # label26: # | # fallthrough-return # | end_function # | .Lfunc_end5: # | # -- End function # | .section .text.complex_cleanup_region,"",@ # | .globl complex_cleanup_region # -- Begin function complex_cleanup_region # | .type complex_cleanup_region,@function # | complex_cleanup_region: # @complex_cleanup_region # | .Lfunc_begin6: # | .functype complex_cleanup_region () -> () # | .local i32, exnref # | # %bb.0: # %entry # | global.get __stack_pointer # | local.set 0 # | block # | block exnref # | try_table (catch_all_ref 0) # 0: down to label30 # | .Ltmp27: # EH_LABEL # | call foo # | .Ltmp28: # EH_LABEL # | br 2 # 2: down to label29 # | # %bb.1: # | end_try_table # label31: # | unreachable # | .LBB7_2: # %ehcleanup # | end_block # label30: # | .Ltmp29: # EH_LABEL # | .Ltmp30: # EH_LABEL # | local.set 1 # | local.get 0 # | global.set __stack_pointer # | block # | block # | try_table (catch_all 0) # 0: down to label33 # | block i32 # | try_table (catch __cpp_exception 0) # 0: down to label35 # | call foo # | .Ltmp31: # EH_LABEL # | br 4 # 4: down to label32 # | # %bb.3: # | end_try_table # label36: # | unreachable # | .LBB7_4: # %catch.start # | end_block # label35: # | .Ltmp32: # EH_LABEL # | drop # | local.get 0 # | global.set __stack_pointer # | br 2 # 2: down to label32 # | # %bb.5: # | end_try_table # label34: # | unreachable # | .LBB7_6: # %ehcleanup.1 # | end_block # label33: # | .Ltmp33: # EH_LABEL # | local.get 0 # | global.set __stack_pointer # | unreachable # | .LBB7_7: # %ehcleanupret # | end_block # label32: # | local.get 1 # | throw_ref # | .LBB7_8: # %invoke.cont # | end_block # label29: # | # fallthrough-return # | end_function # | .Lfunc_end6: # | # -- End function # | .section .text.rethrow_terminator,"",@ # | .globl rethrow_terminator # -- Begin function rethrow_terminator # | .type rethrow_terminator,@function # | rethrow_terminator: # @rethrow_terminator # | .Lfunc_begin7: # | .functype rethrow_terminator () -> () # | .local i32, i32, exnref, exnref # | # %bb.0: # %entry # | block exnref # | global.get __stack_pointer # | i32.const 16 # | i32.sub # | local.tee 0 # | global.set __stack_pointer # | local.get 0 # | i32.const 10 # | i32.store 12 # | block # | block exnref # | try_table (catch_all_ref 0) # 0: down to label39 # | block () -> (i32, exnref) # | try_table (catch_ref __cpp_exception 0) # 0: down to label41 # | .Ltmp34: # EH_LABEL # | call foo # | .Ltmp35: # EH_LABEL # | br 4 # 4: down to label38 # | # %bb.1: # | end_try_table # label42: # | unreachable # | .LBB8_2: # %catch.start # | end_block # label41: # | .Ltmp36: # EH_LABEL # | local.set 2 # | local.set 1 # | local.get 0 # | global.set __stack_pointer # | i32.const 4 # | i32.const GCC_except_table8 # | 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 label43 # | # %bb.3: # %catch # | local.get 1 # | call __cxa_begin_catch # | drop # | try_table (catch_all_ref 4) # 4: down to label37 # | call __cxa_end_catch # | # %bb.4: # | end_try_table # label44: # | .LBB8_5: # | br 3 # 3: down to label38 # | .LBB8_6: # %rethrow # | end_block # label43: # | local.get 0 # | i32.const 20 # | i32.store 12 # | local.get 2 # | throw_ref # | # %bb.7: # | end_try_table # label40: # | unreachable # | .LBB8_8: # %ehcleanup # | end_block # label39: # | .Ltmp37: # EH_LABEL # | local.set 2 # | local.get 0 # | global.set __stack_pointer # | local.get 0 # | i32.load 12 # | call take_i32 # | local.get 2 # | throw_ref # | .LBB8_9: # %try.cont # | end_block # label38: # | local.get 0 # | i32.const 16 # | i32.add # | global.set __stack_pointer # | return # | unreachable # | .LBB8_10: # | end_block # label37: # | local.set 3 # | local.get 3 # | throw_ref # | end_function # | .Lfunc_end7: # | .section .rodata.gcc_except_table,"",@ # | .p2align 2, 0x0 # | GCC_except_table8: # | .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 _ZTIi # TypeInfo 1 # | .Lttbase2: # | .p2align 2, 0x0 # | .LGCC_except_table_end2: # | .size GCC_except_table8, .LGCC_except_table_end2-GCC_except_table8 # | # -- End function # | .section .text.inlined_cleanupret,"",@ # | .globl inlined_cleanupret # -- Begin function inlined_cleanupret # | .type inlined_cleanupret,@function # | inlined_cleanupret: # @inlined_cleanupret # | .Lfunc_begin8: # | .functype inlined_cleanupret () -> () # | .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 2 # | i32.store 0 # | .Ltmp38: # EH_LABEL # | block # | block exnref # | try_table (catch_all_ref 0) # 0: down to label47 # | local.get 1 # | i32.const _ZTIi # | i32.const 0 # | call __cxa_throw # | .Ltmp39: # EH_LABEL # | br 2 # 2: down to label46 # | # %bb.1: # | end_try_table # label48: # | unreachable # | .LBB9_2: # %ehcleanup # | end_block # label47: # | .Ltmp40: # EH_LABEL # | local.set 2 # | local.get 0 # | global.set __stack_pointer # | i32.const 4 # | call __cxa_allocate_exception # | local.tee 1 # | i32.const 1 # | i32.store 0 # | .Ltmp41: # EH_LABEL # | block # | try_table (catch_all 0) # 0: down to label49 # | block # | block i32 # | try_table (catch __cpp_exception 0) # 0: down to label52 # | local.get 1 # | i32.const _ZTIi # | i32.const 0 # | call __cxa_throw # | .Ltmp42: # EH_LABEL # | br 2 # 2: down to label51 # | # %bb.3: # | end_try_table # label53: # | unreachable # | .LBB9_4: # %catch.start.i # | end_block # label52: # | .Ltmp43: # EH_LABEL # | local.set 1 # | local.get 0 # | global.set __stack_pointer # | local.get 1 # | call __cxa_begin_catch # | drop # | .Ltmp44: # EH_LABEL # | call __cxa_end_catch # | .Ltmp45: # EH_LABEL # | # %bb.5: # %invoke.cont.i # | # %bb.6: # %_ZN4TempD2Ev.exit # | block i32 # | try_table (catch_all_ref 5) # 5: down to label45 # | try_table (catch __cpp_exception 1) # 1: down to label54 # | local.get 2 # | throw_ref # | # %bb.7: # | end_try_table # label56: # | # %bb.8: # | end_try_table # label55: # | .LBB9_9: # | unreachable # | .LBB9_10: # %catch.start # | end_block # label54: # | .Ltmp46: # EH_LABEL # | local.set 1 # | local.get 0 # | global.set __stack_pointer # | local.get 1 # | call __cxa_begin_catch # | drop # | try_table (catch_all_ref 4) # 4: down to label45 # | call __cxa_end_catch # | # %bb.11: # | end_try_table # label57: # | .LBB9_12: # %try.cont # | return # | .LBB9_13: # %unreachable # | end_block # label51: # | unreachable # | # %bb.14: # | end_try_table # label50: # | unreachable # | .LBB9_15: # %terminate.i # | end_block # label49: # | .Ltmp47: # EH_LABEL # | local.get 0 # | global.set __stack_pointer # | call _ZSt9terminatev # | unreachable # | .LBB9_16: # %unreachable.for.entry # | end_block # label46: # | unreachable # | unreachable # | .LBB9_17: # | end_block # label45: # | local.set 3 # | local.get 3 # | throw_ref # | end_function # | .Lfunc_end8: # | # -- End function # | .section .text.invoke_throw,"",@ # | .globl invoke_throw # -- Begin function invoke_throw # | .type invoke_throw,@function # | invoke_throw: # @invoke_throw # | .Lfunc_begin9: # | .functype invoke_throw (i32) -> () # | .local i32 # | # %bb.0: # %entry # | global.get __stack_pointer # | local.set 1 # | block i32 # | try_table (catch __cpp_exception 0) # 0: down to label58 # | local.get 0 # | throw __cpp_exception # | # %bb.1: # | end_try_table # label59: # | unreachable # | .LBB10_2: # %catch.start # | end_block # label58: # | .Ltmp48: # EH_LABEL # | local.set 0 # | local.get 1 # | global.set __stack_pointer # | local.get 0 # | call __cxa_begin_catch # | drop # | call __cxa_end_catch # | # %bb.3: # %try.cont # | # fallthrough-return # | end_function # | .Lfunc_end9: # | # -- End function # | .section .text.unwind_destinations,"",@ # | .globl unwind_destinations # -- Begin function unwind_destinations # | .type unwind_destinations,@function # | unwind_destinations: # @unwind_destinations # | .Lfunc_begin10: # | .functype unwind_destinations () -> () # | .local i32, i32 # | # %bb.0: # %entry # | global.get __stack_pointer # | local.set 0 # | block # | block # | try_table (catch_all 0) # 0: down to label61 # | block i32 # | try_table (catch __cpp_exception 0) # 0: down to label63 # | .Ltmp49: # EH_LABEL # | call foo # | .Ltmp50: # EH_LABEL # | br 4 # 4: down to label60 # | # %bb.1: # | end_try_table # label64: # | unreachable # | .LBB11_2: # %catch.start # | end_block # label63: # | .Ltmp51: # EH_LABEL # | local.set 1 # | local.get 0 # | global.set __stack_pointer # | local.get 1 # | call __cxa_begin_catch # | drop # | call _ZSt9terminatev # | unreachable # | # %bb.3: # | end_try_table # label62: # | unreachable # | .LBB11_4: # %terminate # | end_block # label61: # | .Ltmp52: # EH_LABEL # | local.get 0 # | global.set __stack_pointer # | call _ZSt9terminatev # | unreachable # | .LBB11_5: # %try.cont # | end_block # label60: # | # fallthrough-return # | end_function # | .Lfunc_end10: # | # -- End function # | .no_dead_strip __indirect_function_table # | .size _ZTIi, 4 # | .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.unwind_destinations,"",@ # `----------------------------- # 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/exception.ll -wasm-enable-eh -wasm-use-legacy-eh=false -exception-model=wasm -mattr=+exception-handling -filetype=obj # executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -wasm-enable-eh -wasm-use-legacy-eh=false -exception-model=wasm -mattr=+exception-handling -filetype=obj # .---command stderr------------ # | llc: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/MC/MCWasmStreamer.cpp:158: virtual void llvm::MCWasmStreamer::emitULEB128Value(const MCExpr *): Assertion `Value->getKind() == MCExpr::SymbolRef && "Non-absolute leb values can only be symbol refs"' failed. # | PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace and instructions to reproduce the bug. # | Stack dump: # | 0. Program arguments: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -wasm-enable-eh -wasm-use-legacy-eh=false -exception-model=wasm -mattr=+exception-handling -filetype=obj # | 1. Running pass 'Function Pass Manager' on module '<stdin>'. # | 2. Running pass 'WebAssembly Assembly Printer' on function '@catch' # | #0 0x0000000007f09078 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Support/Unix/Signals.inc:834:13 # | #1 0x0000000007f06785 llvm::sys::RunSignalHandlers() /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Support/Signals.cpp:105:18 # | #2 0x0000000007f09e41 SignalHandler(int, siginfo_t*, void*) /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Support/Unix/Signals.inc:426:38 # | #3 0x00007f2ee13f4330 (/lib/x86_64-linux-gnu/libc.so.6+0x45330) # | #4 0x00007f2ee144db2c pthread_kill (/lib/x86_64-linux-gnu/libc.so.6+0x9eb2c) # | #5 0x00007f2ee13f427e raise (/lib/x86_64-linux-gnu/libc.so.6+0x4527e) # | #6 0x00007f2ee13d78ff abort (/lib/x86_64-linux-gnu/libc.so.6+0x288ff) # | #7 0x00007f2ee13d781b (/lib/x86_64-linux-gnu/libc.so.6+0x2881b) # | #8 0x00007f2ee13ea517 (/lib/x86_64-linux-gnu/libc.so.6+0x3b517) # | #9 0x00000000075d18bf (/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc+0x75d18bf) # | #10 0x0000000006cc3605 llvm::EHStreamer::emitExceptionTable()::$_1::operator()() const /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/CodeGen/AsmPrinter/EHStreamer.cpp:500:7 # | #11 0x0000000006cc2535 size /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/include/llvm/ADT/SmallVector.h:80:32 # | #12 0x0000000006cc2535 end /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/include/llvm/ADT/SmallVector.h:273:37 # | #13 0x0000000006cc2535 llvm::EHStreamer::emitExceptionTable() /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/CodeGen/AsmPrinter/EHStreamer.cpp:596:47 # | #14 0x0000000006cec612 llvm::WasmException::endFunction(llvm::MachineFunction const*) /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/CodeGen/AsmPrinter/WasmException.cpp:33:3 # | #15 0x0000000006c38ddf llvm::AsmPrinter::emitFunctionBody() /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp:2289:22 # | #16 0x00000000062d222b llvm::WebAssemblyAsmPrinter::runOnMachineFunction(llvm::MachineFunction&) /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.h:58:5 # | #17 0x0000000006f15343 llvm::MachineFunctionPass::runOnFunction(llvm::Function&) /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/CodeGen/MachineFunctionPass.cpp:0:10 # | #18 0x0000000007485345 llvm::FPPassManager::runOnFunction(llvm::Function&) /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1398:27 # | #19 0x000000000748d2f2 llvm::FPPassManager::runOnModule(llvm::Module&) /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1444:13 # | #20 0x0000000007485dec runOnModule /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1513:27 # | #21 0x0000000007485dec llvm::legacy::PassManagerImpl::run(llvm::Module&) /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:531:44 # | #22 0x0000000004dd8308 compileModule(char**, llvm::LLVMContext&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/tools/llc/llc.cpp:0:8 # | #23 0x0000000004dd56a0 main /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/tools/llc/llc.cpp:451:13 # | #24 0x00007f2ee13d91ca (/lib/x86_64-linux-gnu/libc.so.6+0x2a1ca) # | #25 0x00007f2ee13d928b __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x2a28b) # | #26 0x0000000004dd1125 _start (/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc+0x4dd1125) # `----------------------------- # error: command failed with exit status: -6 -- ``` </details> <details> <summary>LLVM.CodeGen/WebAssembly/target-features-cpus.ll</summary> ``` Exit Code: 1 Command Output (stdout): -- # RUN: at line 1 /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/target-features-cpus.ll -mcpu=mvp | /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/target-features-cpus.ll --check-prefixes MVP # executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -mcpu=mvp # 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/target-features-cpus.ll --check-prefixes MVP # note: command had no output on stdout or stderr # 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/target-features-cpus.ll -mcpu=generic | /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/target-features-cpus.ll --check-prefixes GENERIC # executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -mcpu=generic # 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/target-features-cpus.ll --check-prefixes GENERIC # 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/target-features-cpus.ll -mcpu=lime1 | /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/target-features-cpus.ll --check-prefixes LIME1 # executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -mcpu=lime1 # 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/target-features-cpus.ll --check-prefixes LIME1 # note: command had no output on stdout or stderr # 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/target-features-cpus.ll | /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/target-features-cpus.ll --check-prefixes GENERIC # executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc # 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/target-features-cpus.ll --check-prefixes GENERIC # 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/target-features-cpus.ll -mcpu=bleeding-edge | /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/target-features-cpus.ll --check-prefixes BLEEDING-EDGE # executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/llc -mcpu=bleeding-edge # 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/target-features-cpus.ll --check-prefixes BLEEDING-EDGE # .---command stderr------------ # | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/target-features-cpus.ll:75:23: error: BLEEDING-EDGE-NEXT: expected string not found in input # | ; BLEEDING-EDGE-NEXT: .int8 17 # | ^ # | <stdin>:2:47: note: scanning from here # | .section .custom_section.target_features,"",@ # | ^ # | <stdin>:3:2: note: possible intended match here # | .int8 18 # | ^ # | # | Input file: <stdin> # | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/CodeGen/WebAssembly/target-features-cpus.ll # | # | -dump-input=help explains the following input dump. # | # | Input was: # | <<<<<< # | 1: .file "<stdin>" # | 2: .section .custom_section.target_features,"",@ # | next:75'0 X error: no match found # | 3: .int8 18 # | next:75'0 ~~~~~~~~~~ # | next:75'1 ? possible intended match # | 4: .int8 43 # | next:75'0 ~~~~~~~~~~ # | 5: .int8 7 # | next:75'0 ~~~~~~~~~ # | 6: .ascii "atomics" # | next:75'0 ~~~~~~~~~~~~~~~~~~ # | 7: .int8 43 # | next:75'0 ~~~~~~~~~~ # | 8: .int8 14 # | next:75'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/146230 _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
