wasmer icon indicating copy to clipboard operation
wasmer copied to clipboard

Segmentation fault in Wasmer Rust API when compiling with LLVM and optimizations

Open HeliosPanoptes opened this issue 2 years ago • 9 comments

Describe the bug

echo "`wasmer -V` | `rustc -V` | `uname -m`"
wasmer 2.3.0 | rustc 1.63.0-nightly (490324f7b 2022-05-26) | x86_64

Attempting to compile a Wasm module with LLVMOptLevel::Aggressive results in a segmentation fault, while compiling with LLVMOptLevel::None results in a program that runs correctly.

Steps to reproduce

Here is a zip file of a rust project that reproduces the behavior: load-wasmer.zip

  • Go to load-wasmer
  • Run with cargo run -- ./src/wasmer_segfault.wasm --compiler llvm --engine universal
  • See a checksum printed out
  • Run with cargo run -- ./src/wasmer_segfault.wasm --compiler llvm --engine universal --optimize
  • See the segmentation fault

Expected behavior

I expect to see both optimized and unoptimized versions of the Wasm program produce the same output.

Actual behavior

Optimizing causes a segmentation fault.

Here is the text format of the Wasm program that causes the error:

(module
  (type (;0;) (func (result i32)))
  (type (;1;) (func (param i32 i64 i32) (result f64)))
  (type (;2;) (func))
  (func (;0;) (type 0) (result i32)
    i32.const 0
  )
  (func (;1;) (type 1) (param i32 i64 i32) (result f64)
    (local i32 i64 f32 f64 i32)
    ;; load, const, and mul is important
    i32.const 1
    f64.load offset=95 align=4
    f64.const 0
    f64.mul
    ;; loop is important
    loop (param f64) (result f64)  ;; label = @0
      i32.const 1
      f64.load offset=22 align=4
      f64.add
      local.get 7
      i32.const -1
      i32.add
      local.tee 7
      br_if 0 (;@1;)
    end
  )
  (func (;2;) (type 2))
  (memory (;0;) 1)
  (export "_memory" (memory 0))
  (export "_main" (func 0))
  (export "_crc_globals" (func 2))
)

What's odd about this program is that function 1 is never called.

This behavior only happens with LLVM, and only when optimized. Cranelift does not exhibit this behavior, and the choice of engine between universal and dylib does not change things either.

Additional context

I couldn't manage to reproduce the behavior using the standalone CLI. If there's a way to more compactly reproduce the behavior, please let me know!

This test case is derived from a program created by Wasmlike, an Xsmith-based random program generator. https://www.flux.utah.edu/project/xsmith

HeliosPanoptes avatar Sep 16 '22 19:09 HeliosPanoptes

I managed to reproduce this and it looks like something going wrong inside LLVM's LiveRange query when we call FuncTranslator::translate() and the pass manager is invoked (here).

(click to see a backtrace)
#0  0x0000555555eebb47 in llvm::LiveRange::Query(llvm::SlotIndex) const ()
#1  0x00005555566e325a in (anonymous namespace)::JoinVals::computeAssignment(unsigned int, (anonymous namespace)::JoinVals&) ()
#2  0x00005555566e8625 in (anonymous namespace)::RegisterCoalescer::joinVirtRegs(llvm::CoalescerPair&) [clone .constprop.0] ()
#3  0x00005555566e9fee in (anonymous namespace)::RegisterCoalescer::copyCoalesceWorkList(llvm::MutableArrayRef<llvm::MachineInstr*>) ()
#4  0x00005555566ef3a5 in (anonymous namespace)::RegisterCoalescer::runOnMachineFunction(llvm::MachineFunction&) ()
#5  0x000055555659a4be in llvm::MachineFunctionPass::runOnFunction(llvm::Function&) ()
#6  0x0000555557096df0 in llvm::FPPassManager::runOnFunction(llvm::Function&) ()
#7  0x0000555557096f34 in llvm::FPPassManager::runOnModule(llvm::Module&) ()
#8  0x000055555709837b in llvm::legacy::PassManagerImpl::run(llvm::Module&) ()
#9  0x000055555683ec4d in LLVMTargetMachineEmit(LLVMOpaqueTargetMachine*, LLVMOpaqueModule*, llvm::raw_pwrite_stream&, LLVMCodeGenFileType, char**) ()
#10 0x000055555683eea9 in LLVMTargetMachineEmitToMemoryBuffer ()
#11 0x0000555555dc40bd in inkwell::targets::TargetMachine::write_to_memory_buffer (self=0x7ffff5c060a0, module=0x7ffff5c04da0, 
    file_type=inkwell::targets::FileType::Object) at src/targets.rs:1195
#12 0x0000555555c5d665 in wasmer_compiler_llvm::translator::code::FuncTranslator::translate (self=0x7ffff5c06098, 
    wasm_module=0x555559e85fb0, module_translation=0x7fffffff72a8, local_func_index=0x555559e862a0, function_body=0x555559e87a58, 
    config=0x555559e86b60, memory_styles=0x7fffffff8438, table_styles=0x7fffffff8450, symbol_registry=...)
    at src/translator/code.rs:295
#13 0x0000555555bca615 in wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure#1} (func_translator=0x7ffff5c06098)
    at src/compiler.rs:250
#14 0x0000555555bacdfd in core::ops::function::impls::{impl#0}::call<(&mut wasmer_compiler_llvm::translator::code::FuncTranslator, &(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)), wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}> (self=0x7ffff5c05a20, args=...)
    at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/core/src/ops/function.rs:262
#15 0x0000555555ba5bc3 in rayon::iter::map_with::{impl#11}::consume_iter::with::{closure#0}<&(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData), wasmer_compiler_llvm::translator::code::FuncTranslator, core::result::Result<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, &wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}> (x=0x555559e862a0)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/map_with.rs:317
#16 0x0000555555bdaf8a in core::iter::adapters::map::map_try_fold::{closure#0}<&(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData), core::result::Result<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, core::ops::control_flow::ControlFlow<core::ops::control_flow::ControlFlow<core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, !>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon::iter::map_with::{impl#11}::consume_iter::with::{closure_env#0}<&(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData), wasmer_compiler_llvm::translator::code::FuncTranslator, core::result::Result<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, &wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>, core::iter::adapters::map::map_try_fold::{closure_env#0}<core::result::Result<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, core::option::Option<wasmer_compiler_llvm::object_file::CompiledFunction>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, core::ops::control_flow::ControlFlow<core::ops::control_flow::ControlFlow<core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, !>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, &rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, core::iter::adapters::take_while::{impl#2}::try_fold::check::{closure_env#0}<core::option::Option<wasmer_compiler_llvm::object_file::CompiledFunction>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, core::ops::control_flow::ControlFlow<core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, !>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon::iter::while_some::{impl#4}::consume_iter::some::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction>, core::iter::adapters::map::map_try_fold::{closure_env#0}<core::option::Option<wasmer_compiler_llvm::object_file::CompiledFunction>, wasmer_compiler_llvm::object_file::CompiledFunction, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, core::ops::control_flow::ControlFlow<core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, !>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn(core::option::Option<wasmer_compiler_llvm::object_file::CompiledFunction>) -> wasmer_compiler_llvm::object_file::CompiledFunction, core::iter::adapters::take_while::{impl#2}::try_fold::check::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, !>, rayon::iter::fold::{impl#5}::consume_iter::not_full::{closure_env#0}<rayon::iter::map::MapFolder<rayon::iter::reduce::ReduceFolder<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction>, core::iter::adapters::take_while::{impl#2}::fold::ok::{closure_env#0}<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction, &fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>>>>> (acc=..., elt=0x555559e862a0)
    at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/core/src/iter/adapters/map.rs:91
#17 0x0000555555d14a4f in core::iter::traits::iterator::Iterator::try_fold<core::slice::iter::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, core::iter::adapters::map::map_try_fold::{closure_env#0}<&(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData), core::result::Result<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, core::ops::control_flow::ControlFlow<core::ops::control_flow::ControlFlow<core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, !>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon::iter::map_with::{impl#11}::consume_iter::with::{closure_env#0}<&(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData), wasmer_compiler_llvm::translator::code::FuncTranslator, core::result::Result<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, &wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>, core::iter::adapters::map::map_try_fold::{closure_env#0}<core::result::Result<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, core::option::Option<wasmer_compiler_llvm::object_file::CompiledFunction>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, core::ops::control_flow::ControlFlow<core::ops::control_flow::ControlFlow<core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, !>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, &rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, core::iter::adapters::take_while::{impl#2}::try_fold::check::{closure_env#0}<core::option::Option<wasmer_compiler_llvm::object_file::CompiledFunction>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, core::ops::control_flow::ControlFlow<core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, !>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon::iter::while_some::{impl#4}::consume_iter::some::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction>, core::iter::adapters::map::map_try_fold::{closure_env#0}<core::option::Option<wasmer_compiler_llvm::object_file::CompiledFunction>, wasmer_compiler_llvm::object_file::CompiledFunction, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, core::ops::control_flow::ControlFlow<core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, !>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn(core::option::Option<wasmer_compiler_llvm::object_file::CompiledFunction>) -> wasmer_compiler_llvm::object_file::CompiledFunction, core::iter::adapters::take_while::{impl#2}::try_fold::check::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, !>, rayon::iter::fold::{impl#5}::consume_iter::not_full::{closure_env#0}<rayon::iter::map::MapFolder<rayon::iter::reduce::ReduceFolder<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction>, core::iter::adapters::take_while::{impl#2}::fold::ok::{closure_env#0}<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction, &fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>>>>>, core::ops::control_flow::ControlFlow<core::ops::control_flow::ControlFlow<core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, !>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>> (
    self=0x7ffff5c05a10, init=..., f=...)
    at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/core/src/iter/traits/iterator.rs:2238
#18 0x0000555555bcd559 in core::iter::adapters::map::{impl#2}::try_fold<core::result::Result<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, core::slice::iter::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::{impl#11}::consume_iter::with::{closure_env#0}<&(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData), wasmer_compiler_llvm::translator::code::FuncTranslator, core::result::Result<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, &wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, core::iter::adapters::map::map_try_fold::{closure_env#0}<core::result::Result<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, core::option::Option<wasmer_compiler_llvm::object_file::CompiledFunction>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, core::ops::control_flow::ControlFlow<core::ops::control_flow::ControlFlow<core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, !>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, &rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, core::iter::adapters::take_while::{impl#2}::try_fold::check::{closure_env#0}<core::option::Option<wasmer_compiler_llvm::object_file::CompiledFunction>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, core::ops::control_flow::ControlFlow<core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, !>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon::iter::while_some::{impl#4}::consume_iter::some::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction>, core::iter::adapters::map::map_try_fold::{closure_env#0}<core::option::Option<wasmer_compiler_llvm::object_file::CompiledFunction>, wasmer_compiler_llvm::object_file::CompiledFunction, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, core::ops::control_flow::ControlFlow<core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, !>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn(core::option::Option<wasmer_compiler_llvm::object_file::CompiledFunction>) -> wasmer_compiler_llvm::object_file::CompiledFunction, core::iter::adapters::take_while::{impl#2}::try_fold::check::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, !>, rayon::iter::fold::{impl#5}::consume_iter::not_full::{closure_env#0}<rayon::iter::map::MapFolder<rayon::iter::reduce::ReduceFolder<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction>, core::iter::adapters::take_while::{impl#2}::fold::ok::{closure_env#0}<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction, &fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>>>>, core::ops::control_flow::ControlFlow<core::ops::control_flow::ControlFlow<core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, !>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>> (self=0x7ffff5c05a10, init=..., g=...)
    at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/core/src/iter/adapters/map.rs:117
#19 0x0000555555bcd3a7 in core::iter::adapters::map::{impl#2}::try_fold<core::option::Option<wasmer_compiler_llvm::object_file::CompiledFunction>, core::iter::adapters::map::Map<core::slice::iter::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::{impl#11}::consume_iter::with::{closure_env#0}<&(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData), wasmer_compiler_llvm::translator::code::FuncTranslator, core::result::Result<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, &wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>, &rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, core::iter::adapters::take_while::{impl#2}::try_fold::check::{closure_env#0}<core::option::Option<wasmer_compiler_llvm::object_file::CompiledFunction>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, core::ops::control_flow::ControlFlow<core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, !>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon::iter::while_some::{impl#4}::consume_iter::some::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction>, core::iter::adapters::map::map_try_fold::{closure_env#0}<core::option::Option<wasmer_compiler_llvm::object_file::CompiledFunction>, wasmer_compiler_llvm::object_file::CompiledFunction, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, core::ops::control_flow::ControlFlow<core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, !>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn(core::option::Option<wasmer_compiler_llvm::object_file::CompiledFunction>) -> wasmer_compiler_llvm::object_file::CompiledFunction, core::iter::adapters::take_while::{impl#2}::try_fold::check::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, !>, rayon::iter::fold::{impl#5}::consume_iter::not_full::{closure_env#0}<rayon::iter::map::MapFolder<rayon::iter::reduce::ReduceFolder<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction>, core::iter::adapters::take_while::{impl#2}::fold::ok::{closure_env#0}<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction, &fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>>>, core::ops::control_flow::ControlFlow<core::ops::control_flow::ControlFlow<core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, !>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>> (self=0x7ffff5c05a10, init=..., g=...) at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/core/src/iter/adapters/map.rs:117
#20 0x0000555555bd2160 in core::iter::adapters::take_while::{impl#2}::try_fold<core::iter::adapters::map::Map<core::iter::adapters::map::Map<core::slice::iter::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::{impl#11}::consume_iter::with::{closure_env#0}<&(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData), wasmer_compiler_llvm::translator::code::FuncTranslator, core::result::Result<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, &wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>, &rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, rayon::iter::while_some::{impl#4}::consume_iter::some::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, core::iter::adapters::map::map_try_fold::{closure_env#0}<core::option::Option<wasmer_compiler_llvm::object_file::CompiledFunction>, wasmer_compiler_llvm::object_file::CompiledFunction, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, core::ops::control_flow::ControlFlow<core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, !>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn(core::option::Option<wasmer_compiler_llvm::object_file::CompiledFunction>) -> wasmer_compiler_llvm::object_file::CompiledFunction, core::iter::adapters::take_while::{impl#2}::try_fold::check::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, !>, rayon::iter::fold::{impl#5}::consume_iter::not_full::{closure_env#0}<rayon::iter::map::MapFolder<rayon::iter::reduce::ReduceFolder<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction>, core::iter::adapters::take_while::{impl#2}::fold::ok::{closure_env#0}<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction, &fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>>, core::ops::control_flow::ControlFlow<core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, !>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>> (self=0x7ffff5c05a10, init=..., fold=...)
    at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/core/src/iter/adapters/take_while.rs:93
#21 0x0000555555bceb4b in core::iter::adapters::map::{impl#2}::try_fold<wasmer_compiler_llvm::object_file::CompiledFunction, core::iter::adapters::take_while::TakeWhile<core::iter::adapters::map::Map<core::iter::adapters::map::Map<core::slice::iter::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::{impl#11}::consume_iter::with::{closure_env#0}<&(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData), wasmer_compiler_llvm::translator::code::FuncTranslator, core::result::Result<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, &wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>, &rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, rayon::iter::while_some::{impl#4}::consume_iter::some::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction>>, fn(core::option::Option<wasmer_compiler_llvm::object_file::CompiledFunction>) -> wasmer_compiler_llvm::object_file::CompiledFunction, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, core::iter::adapters::take_while::{impl#2}::try_fold::check::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, !>, rayon::iter::fold::{impl#5}::consume_iter::not_full::{closure_env#0}<rayon::iter::map::MapFolder<rayon::iter::reduce::ReduceFolder<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction>, core::iter::adapters::take_while::{impl#2}::fold::ok::{closure_env#0}<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction, &fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, core::ops::control_flow::ControlFlow<core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, !>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>
    (self=0x7ffff5c05a10, init=..., g=...) at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/core/src/iter/adapters/map.rs:117
#22 0x0000555555bd2675 in core::iter::adapters::take_while::{impl#2}::try_fold<core::iter::adapters::map::Map<core::iter::adapters::take_while::TakeWhile<core::iter::adapters::map::Map<core::iter::adapters::map::Map<core::slice::iter::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::{impl#11}::consume_iter::with::{closure_env#0}<&(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData), wasmer_compiler_llvm::translator::code::FuncTranslator, core::result::Result<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, &wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>, &rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, rayon::iter::while_some::{impl#4}::consume_iter::some::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction>>, fn(core::option::Option<wasmer_compiler_llvm::object_file::CompiledFunction>) -> wasmer_compiler_llvm::object_file::CompiledFunction>, rayon::iter::fold::{impl#5}::consume_iter::not_full::{closure_env#0}<rayon::iter::map::MapFolder<rayon::iter::reduce::ReduceFolder<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, core::iter::adapters::take_while::{impl#2}::fold::ok::{closure_env#0}<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction, &fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, !>> (self=0x7ffff5c05a10, init=..., fold=...)
    at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/core/src/iter/adapters/take_while.rs:93
#23 0x0000555555bd14b6 in core::iter::adapters::take_while::{impl#2}::fold<core::iter::adapters::map::Map<core::iter::adapters::take_while::TakeWhile<core::iter::adapters::map::Map<core::iter::adapters::map::Map<core::slice::iter::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::{impl#11}::consume_iter::with::{closure_env#0}<&(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData), wasmer_compiler_llvm::translator::code::FuncTranslator, core::result::Result<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, &wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>, &rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, rayon::iter::while_some::{impl#4}::consume_iter::some::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction>>, fn(core::option::Option<wasmer_compiler_llvm::object_file::CompiledFunction>) -> wasmer_compiler_llvm::object_file::CompiledFunction>, rayon::iter::fold::{impl#5}::consume_iter::not_full::{closure_env#0}<rayon::iter::map::MapFolder<rayon::iter::reduce::ReduceFolder<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, &fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>> (
    self=..., init=..., fold=0x7fffffff5790)
    at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/core/src/iter/adapters/take_while.rs:108
#24 0x0000555555c0c447 in rayon::iter::fold::{impl#5}::consume_iter<rayon::iter::map::MapFolder<rayon::iter::reduce::ReduceFolder<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction, core::iter::adapters::map::Map<core::iter::adapters::take_while::TakeWhile<core::iter::adapters::map::Map<core::iter::adapters::map::Map<core::slice::iter::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::{impl#11}::consume_iter::with::{closure_env#0}<&(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData), wasmer_compiler_llvm::translator::code::FuncTranslator, core::result::Result<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, &wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>, &rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, rayon::iter::while_some::{impl#4}::consume_iter::some::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction>>, fn(core::option::Option<wasmer_compiler_llvm::object_file::CompiledFunction>) -> wasmer_compiler_llvm::object_file::CompiledFunction>> (self=..., iter=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/fold.rs:158
#25 0x0000555555b33f2f in rayon::iter::while_some::{impl#4}::consume_iter<wasmer_compiler_llvm::object_file::CompiledFunction, rayon::iter::fold::FoldFolder<rayon::iter::map::MapFolder<rayon::iter::reduce::ReduceFolder<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, core::iter::adapters::map::Map<core::iter::adapters::map::Map<core::slice::iter::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::{impl#11}::consume_iter::with::{closure_env#0}<&(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData), wasmer_compiler_llvm::translator::code::FuncTranslator, core::result::Result<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, &wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>, &rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>> (self=..., iter=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/while_some.rs:139
#26 0x0000555555d2c558 in rayon::iter::map::{impl#8}::consume_iter<core::result::Result<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, core::option::Option<wasmer_compiler_llvm::object_file::CompiledFunction>, rayon::iter::while_some::WhileSomeFolder<rayon::iter::fold::FoldFolder<rayon::iter::map::MapFolder<rayon::iter::reduce::ReduceFolder<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, core::iter::adapters::map::Map<core::slice::iter::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::{impl#11}::consume_iter::with::{closure_env#0}<&(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData), wasmer_compiler_llvm::translator::code::FuncTranslator, core::result::Result<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, &wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>> (self=..., iter=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/map.rs:248
#27 0x0000555555ba57e3 in rayon::iter::map_with::{impl#11}::consume_iter<&(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData), wasmer_compiler_llvm::translator::code::FuncTranslator, core::result::Result<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, rayon::iter::map::MapFolder<rayon::iter::while_some::WhileSomeFolder<rayon::iter::fold::FoldFolder<rayon::iter::map::MapFolder<rayon::iter::reduce::ReduceFolder<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}, core::slice::iter::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>> (self=..., iter=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/map_with.rs:322
#28 0x0000555555d27067 in rayon::iter::plumbing::Producer::fold_with<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapWithFolder<rayon::iter::map::MapFolder<rayon::iter::while_some::WhileSomeFolder<rayon::iter::fold::FoldFolder<rayon::iter::map::MapFolder<rayon::iter::reduce::ReduceFolder<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::translator::code::FuncTranslator, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>> (self=..., folder=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/plumbing/mod.rs:110
#29 0x0000555555bff813 in rayon::iter::plumbing::bridge_producer_consumer::helper<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>> (len=1, migrated=false, 
    splitter=..., producer=..., consumer=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/plumbing/mod.rs:438
#30 0x0000555555c007c0 in rayon::iter::plumbing::bridge_producer_consumer::helper::{closure#0}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>> (context=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/plumbing/mod.rs:418
#31 0x0000555555b7a657 in rayon_core::join::join_context::call_a::{closure#0}<alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#0}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>> ()
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-core-1.9.1/src/join/mod.rs:124
#32 0x0000555555b324cf in core::panic::unwind_safe::{impl#23}::call_once<alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon_core::join::join_context::call_a::{closure_env#0}<alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#0}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>>> (self=..., _args=())
    at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/core/src/panic/unwind_safe.rs:271
#33 0x0000555555c18701 in std::panicking::try::do_call<core::panic::unwind_safe::AssertUnwindSafe<rayon_core::join::join_context::call_a::{closure_env#0}<alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#0}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>> (
    data=0x7ffff5c06c28) at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/std/src/panicking.rs:464
#34 0x0000555555c28b8b in __rust_try ()
#35 0x0000555555c13452 in std::panicking::try<alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, core::panic::unwind_safe::AssertUnwindSafe<rayon_core::join::join_context::call_a::{closure_env#0}<alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#0}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>>>> (f=...)
    at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/std/src/panicking.rs:428
#36 0x0000555555c11480 in std::panic::catch_unwind<core::panic::unwind_safe::AssertUnwindSafe<rayon_core::join::join_context::call_a::{closure_env#0}<alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#0}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>> (f=...)
    at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/std/src/panic.rs:137
#37 0x0000555555c0dc5a in rayon_core::unwind::halt_unwinding<rayon_core::join::join_context::call_a::{closure_env#0}<alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#0}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>> (func=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-core-1.9.1/src/unwind.rs:17
#38 0x0000555555b73786 in rayon_core::join::join_context::{closure#0}<rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#0}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>, rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#1}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>> (
    worker_thread=0x7ffff5c08d80, injected=false)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-core-1.9.1/src/join/mod.rs:141
#39 0x0000555555cfb32e in rayon_core::registry::in_worker<rayon_core::join::join_context::{closure_env#0}<rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#0}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>, rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#1}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, (alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>)> (op=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-core-1.9.1/src/registry.rs:875
#40 0x0000555555b723e8 in rayon_core::join::join_context<rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#0}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>, rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#1}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>> (oper_a=..., oper_b=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-core-1.9.1/src/join/mod.rs:132
#41 0x0000555555bff651 in rayon::iter::plumbing::bridge_producer_consumer::helper<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>> (len=2, migrated=true, 
    splitter=..., producer=..., consumer=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/plumbing/mod.rs:416
#42 0x0000555555c005e7 in rayon::iter::plumbing::bridge_producer_consumer::helper::{closure#1}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>> (context=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/plumbing/mod.rs:427
#43 0x0000555555b7b903 in rayon_core::join::join_context::call_b::{closure#0}<alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#1}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>> (migrated=true)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-core-1.9.1/src/join/mod.rs:129
#44 0x0000555555d0f693 in rayon_core::job::{impl#4}::execute::call::{closure#0}<alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon_core::join::join_context::call_b::{closure_env#0}<alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#1}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>>> ()
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-core-1.9.1/src/job.rs:113
#45 0x0000555555b32b8f in core::panic::unwind_safe::{impl#23}::call_once<alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon_core::job::{impl#4}::execute::call::{closure_env#0}<alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon_core::join::join_context::call_b::{closure_env#0}<alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#1}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>>>> (self=..., _args=()) at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/core/src/panic/unwind_safe.rs:271
#46 0x0000555555c16951 in std::panicking::try::do_call<core::panic::unwind_safe::AssertUnwindSafe<rayon_core::job::{impl#4}::execute::call::{closure_env#0}<alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon_core::join::join_context::call_b::{closure_env#0}<alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#1}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>>>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>> (data=0x7ffff5c08468)
    at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/std/src/panicking.rs:464
#47 0x0000555555c28b8b in __rust_try ()
#48 0x0000555555c13752 in std::panicking::try<alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, core::panic::unwind_safe::AssertUnwindSafe<rayon_core::job::{impl#4}::execute::call::{closure_env#0}<alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon_core::join::join_context::call_b::{closure_env#0}<alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#1}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>>>>> (f=...) at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/std/src/panicking.rs:428
#49 0x0000555555c11bc0 in std::panic::catch_unwind<core::panic::unwind_safe::AssertUnwindSafe<rayon_core::job::{impl#4}::execute::call::{closure_env#0}<alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon_core::join::join_context::call_b::{closure_env#0}<alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#1}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>>>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>> (f=...) at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/std/src/panic.rs:137
#50 0x0000555555c0dada in rayon_core::unwind::halt_unwinding<rayon_core::job::{impl#4}::execute::call::{closure_env#0}<alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon_core::join::join_context::call_b::{closure_env#0}<alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#1}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>> (func=...) at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-core-1.9.1/src/unwind.rs:17
#51 0x0000555555d08f29 in rayon_core::job::{impl#4}::execute<rayon_core::latch::SpinLatch, rayon_core::join::join_context::call_b::{closure_env#0}<alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#1}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>> (this=0x7ffff60091a0)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-core-1.9.1/src/job.rs:119
#52 0x0000555557dbb66e in rayon_core::job::JobRef::execute (self=0x7ffff5c08ac0) at src/job.rs:59
#53 0x0000555557dc611a in rayon_core::registry::WorkerThread::execute (self=0x7ffff5c08d80, job=...) at src/registry.rs:749
#54 0x0000555557dc5e7a in rayon_core::registry::WorkerThread::wait_until_cold (self=0x7ffff5c08d80, latch=0x555559e8e1d0)
    at src/registry.rs:726
#55 0x0000555557dc5c0c in rayon_core::registry::WorkerThread::wait_until<rayon_core::latch::CountLatch> (self=0x7ffff5c08d80, 
    latch=0x555559e8e1d0) at src/registry.rs:700
#56 0x0000555557dc6a24 in rayon_core::registry::main_loop (worker=..., registry=..., index=14) at src/registry.rs:833
#57 0x0000555557dc382d in rayon_core::registry::ThreadBuilder::run (self=...) at src/registry.rs:55
#58 0x0000555557dc3d0d in rayon_core::registry::{impl#2}::spawn::{closure#0} () at src/registry.rs:100
#59 0x0000555557db9bdc in std::sys_common::backtrace::__rust_begin_short_backtrace<rayon_core::registry::{impl#2}::spawn::{closure_env#0}, ()> (f=...) at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/std/src/sys_common/backtrace.rs:122
#60 0x0000555557d857cd in std::thread::{impl#0}::spawn_unchecked_::{closure#1}::{closure#0}<rayon_core::registry::{impl#2}::spawn::{closure_env#0}, ()> () at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/std/src/thread/mod.rs:514
#61 0x0000555557d8ad51 in core::panic::unwind_safe::{impl#23}::call_once<(), std::thread::{impl#0}::spawn_unchecked_::{closure#1}::{closure_env#0}<rayon_core::registry::{impl#2}::spawn::{closure_env#0}, ()>> (self=..., _args=())
    at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/core/src/panic/unwind_safe.rs:271
#62 0x0000555557da425a in std::panicking::try::do_call<core::panic::unwind_safe::AssertUnwindSafe<std::thread::{impl#0}::spawn_unchecked_::{closure#1}::{closure_env#0}<rayon_core::registry::{impl#2}::spawn::{closure_env#0}, ()>>, ()> (data=0x7ffff5c095d0)
    at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/std/src/panicking.rs:464
#63 0x0000555557da694b in __rust_try ()
#64 0x0000555557da3c06 in std::panicking::try<(), core::panic::unwind_safe::AssertUnwindSafe<std::thread::{impl#0}::spawn_unchecked_::{closure#1}::{closure_env#0}<rayon_core::registry::{impl#2}::spawn::{closure_env#0}, ()>>> (f=...)
    at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/std/src/panicking.rs:428
#65 0x0000555557dab941 in std::panic::catch_unwind<core::panic::unwind_safe::AssertUnwindSafe<std::thread::{impl#0}::spawn_unchecked_::{closure#1}::{closure_env#0}<rayon_core::registry::{impl#2}::spawn::{closure_env#0}, ()>>, ()> (f=...)
    at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/std/src/panic.rs:137
#66 0x0000555557d84dff in std::thread::{impl#0}::spawn_unchecked_::{closure#1}<rayon_core::registry::{impl#2}::spawn::{closure_env#0}, ()> () at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/std/src/thread/mod.rs:513
#67 0x0000555557dc075f in core::ops::function::FnOnce::call_once<std::thread::{impl#0}::spawn_unchecked_::{closure_env#1}<rayon_core::registry::{impl#2}::spawn::{closure_env#0}, ()>, ()> ()
    at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/core/src/ops/function.rs:251
#68 0x00005555589aef13 in alloc::boxed::{impl#44}::call_once<(), dyn core::ops::function::FnOnce<(), Output=()>, alloc::alloc::Global>
    () at library/alloc/src/boxed.rs:1938
#69 alloc::boxed::{impl#44}::call_once<(), alloc::boxed::Box<dyn core::ops::function::FnOnce<(), Output=()>, alloc::alloc::Global>, alloc::alloc::Global> () at library/alloc/src/boxed.rs:1938
#70 std::sys::unix::thread::{impl#2}::new::thread_start () at library/std/src/sys/unix/thread.rs:108
#71 0x00007ffff789f74d in ?? () from /usr/lib/libc.so.6
#72 0x00007ffff7921700 in ?? () from /usr/lib/libc.so.6

Looking at the main thread, the parallel compilation was triggered from here.

(click to see backtrace from main thread)
#0  0x00007ffff791959d in syscall () from /usr/lib/libc.so.6
#0  0x00007ffff791959d in syscall () from /usr/lib/libc.so.6
#1  0x00005555589af850 in std::sys::unix::futex::futex_wait () at library/std/src/sys/unix/futex.rs:62
#2  std::sys::unix::locks::futex_condvar::Condvar::wait_optional_timeout () at library/std/src/sys/unix/locks/futex_condvar.rs:51
#3  std::sys::unix::locks::futex_condvar::Condvar::wait () at library/std/src/sys/unix/locks/futex_condvar.rs:35
#4  0x0000555557d93790 in std::sys_common::condvar::Condvar::wait (self=0x7ffff7df582c, mutex=0x7ffff7df5824)
    at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/std/src/sys_common/condvar.rs:43
#5  0x0000555557db9da6 in std::sync::condvar::Condvar::wait<bool> (self=0x7ffff7df582c, guard=...)
    at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/std/src/sync/condvar.rs:191
#6  0x0000555557dadcc7 in rayon_core::latch::LockLatch::wait_and_reset (self=0x7ffff7df5824) at src/latch.rs:240
#7  0x0000555555cf8784 in rayon_core::registry::{impl#6}::in_worker_cold::{closure#0}<rayon_core::join::join_context::{closure_env#0}<rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#0}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>, rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#1}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, (alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>)> (l=0x7ffff7df5824)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-core-1.9.1/src/registry.rs:470
#8  0x0000555555ce39a7 in std::thread::local::LocalKey<rayon_core::latch::LockLatch>::try_with<rayon_core::latch::LockLatch, rayon_core::registry::{impl#6}::in_worker_cold::{closure_env#0}<rayon_core::join::join_context::{closure_env#0}<rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#0}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>, rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#1}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, (alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>)>, (alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>)> (self=0x555559ca5590, f=...)
    at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/std/src/thread/local.rs:446
#9  0x0000555555ce2e8f in std::thread::local::LocalKey<rayon_core::latch::LockLatch>::with<rayon_core::latch::LockLatch, rayon_core::registry::{impl#6}::in_worker_cold::{closure_env#0}<rayon_core::join::join_context::{closure_env#0}<rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#0}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>, rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#1}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, (alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>)>, (alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>)> (self=0x555559ca5590, f=...)
    at /rustc/57f097ea25f2c05f424fc9b9dc50dbd6d399845c/library/std/src/thread/local.rs:422
#10 0x0000555555cf63e6 in rayon_core::registry::Registry::in_worker_cold<rayon_core::join::join_context::{closure_env#0}<rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#0}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>, rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#1}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, (alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>)> (self=0x555559e8f200, op=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-core-1.9.1/src/registry.rs:458
#11 0x0000555555cfb392 in rayon_core::registry::in_worker<rayon_core::join::join_context::{closure_env#0}<rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#0}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>, rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#1}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, (alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>)> (op=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-core-1.9.1/src/registry.rs:877
#12 0x0000555555b723e8 in rayon_core::join::join_context<rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#0}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>, rayon::iter::plumbing::bridge_producer_consumer::helper::{closure_env#1}<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>> (oper_a=..., oper_b=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-core-1.9.1/src/join/mod.rs:132
#13 0x0000555555bff651 in rayon::iter::plumbing::bridge_producer_consumer::helper<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>> (len=3, migrated=false, 
    splitter=..., producer=..., consumer=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/plumbing/mod.rs:416
#14 0x0000555555bfc6d2 in rayon::iter::plumbing::bridge_producer_consumer<rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>> (len=3, producer=..., consumer=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/plumbing/mod.rs:397
#15 0x0000555555beb352 in rayon::iter::plumbing::bridge::{impl#0}::callback<rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>, &(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData), rayon::slice::IterProducer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>> (self=..., producer=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/plumbing/mod.rs:373
#16 0x0000555555d29e49 in rayon::slice::{impl#6}::with_producer<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData), rayon::iter::plumbing::bridge::Callback<rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>>> (self=..., callback=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/slice/mod.rs:525
#17 0x0000555555c05a6c in rayon::iter::plumbing::bridge<rayon::slice::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>> (par_iter=..., consumer=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/plumbing/mod.rs:357
#18 0x0000555555d288fe in rayon::slice::{impl#5}::drive_unindexed<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData), rayon::iter::map_with::MapInitConsumer<rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>> (self=..., consumer=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/slice/mod.rs:501
#19 0x0000555555ba306c in rayon::iter::map_with::{impl#14}::drive_unindexed<rayon::slice::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::translator::code::FuncTranslator, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}, core::result::Result<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, rayon::iter::map::MapConsumer<rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>> (self=..., consumer=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/map_with.rs:382
#20 0x0000555555d29b78 in rayon::iter::map::{impl#2}::drive_unindexed<rayon::iter::map_with::MapInit<rayon::slice::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>, core::option::Option<wasmer_compiler_llvm::object_file::CompiledFunction>, rayon::iter::while_some::WhileSomeConsumer<rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>> (self=..., 
    consumer=...) at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/map.rs:49
#21 0x0000555555b4d0f8 in rayon::iter::while_some::{impl#1}::drive_unindexed<rayon::iter::map::Map<rayon::iter::map_with::MapInit<rayon::slice::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>, wasmer_compiler_llvm::object_file::CompiledFunction, rayon::iter::fold::FoldConsumer<rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>> (self=..., consumer=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/while_some.rs:44
#22 0x0000555555c28790 in rayon::iter::fold::{impl#2}::drive_unindexed<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, rayon::iter::while_some::WhileSome<rayon::iter::map::Map<rayon::iter::map_with::MapInit<rayon::slice::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, rayon::iter::map::MapConsumer<rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>> (self=..., 
    consumer=...) at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/fold.rs:59
#23 0x0000555555d293c0 in rayon::iter::map::{impl#2}::drive_unindexed<rayon::iter::fold::Fold<rayon::iter::while_some::WhileSome<rayon::iter::map::Map<rayon::iter::map_with::MapInit<rayon::slice::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, rayon::iter::reduce::ReduceConsumer<fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>> (self=..., consumer=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/map.rs:49
#24 0x0000555555be8017 in rayon::iter::reduce::reduce<rayon::iter::map::Map<rayon::iter::fold::Fold<rayon::iter::while_some::WhileSome<rayon::iter::map::Map<rayon::iter::map_with::MapInit<rayon::slice::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>> (pi=..., 
    identity=0x555559e87cb0, 
    reduce_op=0x555555c1d891 <rayon::iter::fold::Fold<rayon::iter::while_some::WhileSome<rayon::iter::map::Map<rayon::iter::map_with::MapInit<rayon::slice::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>::new<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, rayon::iter::while_some::WhileSome<rayon::iter::map::Map<rayon::iter::map_with::MapInit<rayon::slice::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>+49>)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/reduce.rs:15
#25 0x0000555555d251fd in rayon::iter::ParallelIterator::reduce<rayon::iter::map::Map<rayon::iter::fold::Fold<rayon::iter::while_some::WhileSome<rayon::iter::map::Map<rayon::iter::map_with::MapInit<rayon::slice::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>>, fn() -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction) -> alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn(alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>, fn(alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>) -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>, fn() -> alloc::collections::linked_list::LinkedList<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>>>
    (self=..., identity=0x7fffffff5ec8, op=0x7fffffff5a08)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/mod.rs:981
#26 0x0000555555d2637c in rayon::iter::extend::collect<rayon::iter::while_some::WhileSome<rayon::iter::map::Map<rayon::iter::map_with::MapInit<rayon::slice::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>>> (par_iter=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/extend.rs:29
#27 0x0000555555c4e973 in rayon::iter::collect::{impl#1}::par_extend<wasmer_compiler_llvm::object_file::CompiledFunction, rayon::iter::while_some::WhileSome<rayon::iter::map::Map<rayon::iter::map_with::MapInit<rayon::slice::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>>> (self=0x7fffffff5f40, par_iter=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/collect/mod.rs:165
#28 0x0000555555c1d5b5 in rayon::iter::from_par_iter::collect_extended<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, rayon::iter::while_some::WhileSome<rayon::iter::map::Map<rayon::iter::map_with::MapInit<rayon::slice::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>>> (
    par_iter=...) at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/from_par_iter.rs:17
#29 0x0000555555c4e7cd in rayon::iter::from_par_iter::{impl#0}::from_par_iter<wasmer_compiler_llvm::object_file::CompiledFunction, rayon::iter::while_some::WhileSome<rayon::iter::map::Map<rayon::iter::map_with::MapInit<rayon::slice::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>>> (par_iter=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/from_par_iter.rs:30
#30 0x0000555555b3e88d in rayon::iter::ParallelIterator::collect<rayon::iter::while_some::WhileSome<rayon::iter::map::Map<rayon::iter::map_with::MapInit<rayon::slice::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>, rayon::result::{impl#4}::from_par_iter::ok::{closure_env#0}<wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError>>>, alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>> (
    self=...) at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/mod.rs:2046
#31 0x0000555555d438dd in rayon::result::{impl#4}::from_par_iter<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler_llvm::object_file::CompiledFunction, wasmer_compiler::error::CompileError, rayon::iter::map_with::MapInit<rayon::slice::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>> (par_iter=...) at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/result.rs:121
#32 0x0000555555bb018c in rayon::iter::ParallelIterator::collect<rayon::iter::map_with::MapInit<rayon::slice::Iter<(wasmer_types::indexes::LocalFunctionIndex, &wasmer_compiler::translator::environ::FunctionBodyData)>, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#0}, wasmer_compiler_llvm::compiler::{impl#3}::compile_module::{closure_env#1}>, core::result::Result<alloc::vec::Vec<wasmer_compiler_llvm::object_file::CompiledFunction, alloc::alloc::Global>, wasmer_compiler::error::CompileError>> (self=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/rayon-1.5.1/src/iter/mod.rs:2046
#33 0x0000555555bc97f6 in wasmer_compiler_llvm::compiler::{impl#3}::compile_module (self=0x555559e86b60, target=0x555559e85f60, 
    compile_info=0x7fffffff8430, module_translation=0x7fffffff72a8, function_body_inputs=...) at src/compiler.rs:238
#34 0x0000555557bfccf3 in wasmer_engine_universal_artifact::artifact::UniversalArtifactBuild::new (inner_engine=0x555559e87aa8, 
    data=..., target=0x555559e85f60, memory_styles=..., table_styles=...) at src/artifact.rs:69
#35 0x0000555557b9b3f4 in wasmer_engine_universal::artifact::UniversalArtifact::new (engine=0x555559e85d90, data=..., tunables=...)
    at src/artifact.rs:67
#36 0x0000555557b95e09 in wasmer_engine_universal::engine::{impl#1}::compile (self=0x555559e85d90, binary=..., tunables=...)
    at src/engine.rs:118
#37 0x0000555557b6ce64 in wasmer::sys::module::Module::compile (store=0x7fffffffbea0, binary=...) at src/sys/module.rs:177
#38 0x0000555557b6cc46 in wasmer::sys::module::Module::from_binary_unchecked (store=0x7fffffffbea0, binary=...)
    at src/sys/module.rs:162
#39 0x0000555557b6cbb2 in wasmer::sys::module::Module::from_binary (store=0x7fffffffbea0, binary=...) at src/sys/module.rs:148
#40 0x00005555559f2109 in wasmer::sys::module::Module::new<alloc::vec::Vec<u8, alloc::alloc::Global>> (store=0x7fffffffbea0, bytes=...)
    at /home/consulting/.cargo/registry/src/github.com-1ecc6299db9ec823/wasmer-2.3.0/src/sys/module.rs:125
#41 0x00005555559e6b1b in load_wasmer::main () at src/main.rs:113

Interestingly, when look at the assembly for the instructions around 0x555555eebb47, we're runningcmp 0x8(%r8),%r12 is (essentially *(%r8 + 8) == %r12), and looking at the contents of %r8 it seems like we're trying to read the field at offset 0x8 of a null pointer.

(gdb) display/4i $pc-5
14: x/4i $pc-5
   0x555555eebb42 <_ZNK4llvm9LiveRange5QueryENS_9SlotIndexE+146>:	cmp    %r10,%r12
   0x555555eebb45 <_ZNK4llvm9LiveRange5QueryENS_9SlotIndexE+149>:	
    je     0x555555eebb78 <_ZNK4llvm9LiveRange5QueryENS_9SlotIndexE+200>
=> 0x555555eebb47 <_ZNK4llvm9LiveRange5QueryENS_9SlotIndexE+151>:	cmp    0x8(%r8),%r12
   0x555555eebb4b <_ZNK4llvm9LiveRange5QueryENS_9SlotIndexE+155>:	
    jne    0x555555eebb0b <_ZNK4llvm9LiveRange5QueryENS_9SlotIndexE+91>

(gdb) info registers
rax            0x7fffbc0d0498      140736348357784
rbx            0x7ffff5c03c40      140737316404288
rcx            0x200               512
rdx            0x7fffbc0ce1e4      140736348348900
rsi            0x7fffbc0d04c8      140736348357832
rdi            0xd0                208
rbp            0x7fffbc0cb910      0x7fffbc0cb910
rsp            0x7ffff5c03bf0      0x7ffff5c03bf0
r8             0x0                 0
r9             0x1                 1
r10            0x7fffbc0ce1e0      140736348348896
r11            0x0                 0
r12            0x7fffbc0ce1e0      140736348348896
...
rip            0x555555eebb47      0x555555eebb47 <llvm::LiveRange::Query(llvm::SlotIndex) const+151>

I'll have a look in LLVM's issue tracker to see if something similar has occurred before. In the meantime, I'll try to make inkwell link to a debug build of LLVM 12 - that should give us a more useful stacktrace and let gdb inspect variables.

Michael-F-Bryan avatar Oct 06 '22 14:10 Michael-F-Bryan

Interestingly, enabling the verifier pass shows that we're generating broken LLVM IR.

Instruction does not dominate all uses!
  %14 = select i1 %nan, double 0x7FF8000000000000, double %11
  %13 = phi double [ %14, %start_of_code ], [ %21, %loop_body ]
in function f1
LLVM ERROR: Broken function found, compilation aborted!
[1]    565553 IOT instruction (core dumped)  cargo run -- ./src/wasmer_segfault.wasm --compiler llvm --engine universal

I'm guessing the br_if 0 (;@1;) at the end of function 1's loop isn't being lowered correctly, which later causes LLVM to crash.

Using the LLVMCallbacks::preopt_ir() hook, it looks like we generate the following LLVM IR for f1:

; Function Attrs: nounwind
define dllexport double @f1(i8* nofree align 16 dereferenceable(240) %0, i32 %1, i64 %2, i32 %3) #8 section "__TEXT,wasmer_function" personality i32 ()* @__gxx_personality_v0 {
start_of_code:
  %4 = getelementptr i8, i8* %0, i64 16
  %5 = bitcast i8* %4 to i8**
  %6 = load i8*, i8** %5, align 16, !tbaa !2
  %7 = getelementptr i8, i8* %6, i64 96
  %8 = bitcast i8* %7 to double*
  %9 = load volatile double, double* %8, align 1, !tbaa !4
  %10 = call double @llvm.experimental.constrained.fmul.f64(double %9, double 0.000000e+00, metadata !"round.tonearest", metadata !"fpexcept.strict")
  %nan = fcmp uno double %10, 0.000000e+00
  br i1 %nan, label %start_of_code.split.us, label %start_of_code.split

start_of_code.split.us:                           ; preds = %start_of_code
  %11 = getelementptr i8, i8* %6, i64 23
  %12 = bitcast i8* %11 to double*
  br label %loop_body.us

loop_body.us:                                     ; preds = %loop_body.us, %start_of_code.split.us
  %local6.0.us = phi i32 [ 0, %start_of_code.split.us ], [ %16, %loop_body.us ]
  %13 = phi double [ %.lcssa9, %start_of_code.split.us ], [ %17, %loop_body.us ]
  %14 = load volatile double, double* %12, align 1, !tbaa !4
  %15 = call double @llvm.experimental.constrained.fadd.f64(double %13, double %14, metadata !"round.tonearest", metadata !"fpexcept.strict")
  %16 = add i32 %local6.0.us, -1
  %nan7.us = fcmp uno double %15, 0.000000e+00
  %17 = select i1 %nan7.us, double 0x7FF8000000000000, double %15
  %.not.us = icmp eq i32 %16, 0
  br i1 %.not.us, label %return, label %loop_body.us

start_of_code.split:                              ; preds = %start_of_code
  %18 = getelementptr i8, i8* %6, i64 23
  %19 = bitcast i8* %18 to double*
  br label %loop_body

return:                                           ; preds = %loop_body, %loop_body.us
  %.pre-phi = phi double [ %24, %loop_body ], [ %17, %loop_body.us ]
  %.lcssa9 = phi double [ %10, %loop_body ], [ 0x7FF8000000000000, %loop_body.us ]
  ret double %.pre-phi

loop_body:                                        ; preds = %loop_body, %start_of_code.split
  %local6.0 = phi i32 [ 0, %start_of_code.split ], [ %23, %loop_body ]
  %20 = phi double [ %.lcssa9, %start_of_code.split ], [ %24, %loop_body ]
  %21 = load volatile double, double* %19, align 1, !tbaa !4
  %22 = call double @llvm.experimental.constrained.fadd.f64(double %20, double %21, metadata !"round.tonearest", metadata !"fpexcept.strict")
  %23 = add i32 %local6.0, -1
  %nan7 = fcmp uno double %22, 0.000000e+00
  %24 = select i1 %nan7, double 0x7FF8000000000000, double %22
  %.not = icmp eq i32 %23, 0
  br i1 %.not, label %return, label %loop_body
}

(:paperclip: wasmer_segfault.ll)

Michael-F-Bryan avatar Oct 07 '22 12:10 Michael-F-Bryan

The use of the %.lcssa9 variable seems to be the important bit:

loop_body.us:                                     ; preds = %loop_body.us, %start_of_code.split.us
  %local6.0.us = phi i32 [ 0, %start_of_code.split.us ], [ %16, %loop_body.us ]
  %13 = phi double [ %.lcssa9, %start_of_code.split.us ], [ %17, %loop_body.us ] 
; ^^^ ERROR: Instruction does not dominate all uses
  ...
  br i1 %.not.us, label %return, label %loop_body.us

...

return:                                           ; preds = %loop_body, %loop_body.us
  %.pre-phi = phi double [ %24, %loop_body ], [ %17, %loop_body.us ]
  %.lcssa9 = phi double [ %10, %loop_body ], [ 0x7FF8000000000000, %loop_body.us ]
; ^^^^^^^^ declared+initialized here
  ret double %.pre-phi

The way I read it, you can only get to the loop_body.us block via start_of_code -> start_of_code.split.us or repeating the loop (not important here), and the %.lcssa9 variable isn't defined until the return block.

To double check that the use-before-define of %lcssa9 is the problem, I took a basic "Hello World" program and made it call puts() before it loads the variable being printed.

; hello.ll
@string = private constant [15 x i8] c"Hello, world!\0A\00"

declare i32 @puts(i8*)

define i32 @main() {
  call i32 @puts(i8* %address)
  %address = getelementptr [15 x i8], [15 x i8]* @string, i64 0, i64 0
  ret i32 0
}

Running this through opt and asking it to verify integrity after each pass shows the same verification error:

$ opt --verify-each hello.ll -o hello.bc
Instruction does not dominate all uses!
  %address = getelementptr [15 x i8], [15 x i8]* @string, i64 0, i64 0
  %1 = call i32 @puts(i8* %address)
opt: hello.ll: error: input module is broken!

I'd be curious to find out how the %13 variable is generated because I always thought IR builders would only let you emit an instruction if you've got a handle to some variable that's already been declared. That would also explain why LLVM ends up dereferencing a null pointer - nothing was found when it went to look up the PHI node's operands (a llvm::LiveRange) so null was returned, and later on we try to call a method on the null pointer.

Michael-F-Bryan avatar Oct 07 '22 13:10 Michael-F-Bryan

@ptitSeb and I had a look at this on Zoom, and we're thinking the program generator might be generating funny code. In particular, the br_if 0 (;@1;) at the end of the loop means we might jump to the function's entry point, which looks a bit strange to me.

I'll double-check with the WebAssembly spec to see whether that is valid.

Michael-F-Bryan avatar Oct 11 '22 10:10 Michael-F-Bryan

I have looked at this ticket and found a potential fix:

diff --git a/lib/compiler-llvm/src/translator/code.rs b/lib/compiler-llvm/src/translator/code.rs
index 1578373f7f..bec449189b 100644
--- a/lib/compiler-llvm/src/translator/code.rs
+++ b/lib/compiler-llvm/src/translator/code.rs
@@ -1554,7 +1554,7 @@ impl<'ctx, 'a> LLVMFunctionCodeGenerator<'ctx, 'a> {
                 let cond = self.state.pop1()?;
                 let frame = self.state.frame_at_depth(relative_depth)?;

-                let current_block = self
+                let _current_block = self
                     .builder
                     .get_insert_block()
                     .ok_or_else(|| CompileError::Codegen("not currently in a block".to_string()))?;
@@ -1565,16 +1565,6 @@ impl<'ctx, 'a> LLVMFunctionCodeGenerator<'ctx, 'a> {
                     frame.phis()
                 };

-                let param_stack = self.state.peekn_extra(phis.len())?;
-                let param_stack = param_stack
-                    .iter()
-                    .map(|(v, info)| self.apply_pending_canonicalization(*v, *info));
-
-                for (phi, value) in phis.iter().zip(param_stack) {
-                    phi.add_incoming(&[(&value, current_block)]);
-                }
-
-                let else_block = self.context.append_basic_block(self.function, "else");

                 let cond_value = self.builder.build_int_compare(
                     IntPredicate::NE,
@@ -1582,9 +1572,30 @@ impl<'ctx, 'a> LLVMFunctionCodeGenerator<'ctx, 'a> {
                     self.intrinsics.i32_zero,
                     "",
                 );
-                self.builder
-                    .build_conditional_branch(cond_value, *frame.br_dest(), else_block);
-                self.builder.position_at_end(else_block);
+                if phis.len() == 0 {
+                    let else_block = self.context.append_basic_block(self.function, "else");
+                    self.builder
+                        .build_conditional_branch(cond_value, *frame.br_dest(), else_block);
+                    self.builder.position_at_end(else_block);
+                } else {
+                    let then_block = self.context.append_basic_block(self.function, "then");
+                    let else_block = self.context.append_basic_block(self.function, "else");
+
+                    self.builder
+                        .build_conditional_branch(cond_value, then_block, else_block);
+
+                    self.builder.position_at_end(then_block);
+                    let param_stack = self.state.peekn_extra(phis.len())?;
+                    let param_stack = param_stack
+                        .iter()
+                        .map(|(v, info)| self.apply_pending_canonicalization(*v, *info));
+
+                    for (phi, value) in phis.iter().zip(param_stack) {
+                        phi.add_incoming(&[(&value, then_block)]);
+                    }
+                    self.builder.build_unconditional_branch(*frame.br_dest());
+                    self.builder.position_at_end(else_block);
+                }
             }
             Operator::BrTable { ref table } => {
                 let current_block = self

It's not merged yet, as I want a unit test reproducing the issue first.

ButI don't reproduce the problem in an unit test with the current master codebase...

@HeliosPanoptes could you update your sample to 3.1 version and see if you still have the problem there?

ptitSeb avatar Dec 15 '22 08:12 ptitSeb

I still get a segfault unfortunately...

Here's the updated sample: load-wasmer-3.1.zip Thanks for the migration guide by the way! It was very helpful!

Build with cargo build Run with cargo run -- ./wasmer_segfault.wasm --compiler llvm --optimize

Also same as before is that the segfault only occurs with LLVM and optimizations, nothing else.

HeliosPanoptes avatar Dec 17 '22 20:12 HeliosPanoptes

Thank you for updating the sample.

I tried it, and if you apply the diff from my previous post https://github.com/wasmerio/wasmer/issues/3190#issuecomment-1352742348 it works fine. I still need to create a unit test that highlight this issue before submiting the fixed code.

ptitSeb avatar Dec 19 '22 10:12 ptitSeb

🤦 I completely forgot to apply the diff... Glad it's working!

HeliosPanoptes avatar Dec 19 '22 19:12 HeliosPanoptes

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

stale[bot] avatar May 03 '24 21:05 stale[bot]

Feel free to reopen the issue if it has been closed by mistake.

stale[bot] avatar Jun 05 '24 01:06 stale[bot]