; LLVM IR from gem5/gem5 :: src/systemc/tests/systemc/misc/gnats/pr-503/pr-503.ll (ZN8EXC_CTRL12start_alwaysEv)

; Unoptimized IR (clang -disable-llvm-passes):
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

%"class.sc_dt::sc_int" = type { %"class.sc_dt::sc_int_base" }
%"class.sc_dt::sc_int_base" = type { %"class.sc_dt::sc_value_base", i64, i32, i32 }
%"class.sc_dt::sc_value_base" = type { ptr }
%"class.sc_dt::sc_int.0" = type { %"class.sc_dt::sc_int_base" }
%"class.sc_dt::sc_int.1" = type { %"class.sc_dt::sc_int_base" }
%"class.sc_dt::sc_int.2" = type { %"class.sc_dt::sc_int_base" }
%"class.sc_dt::sc_int.3" = type { %"class.sc_dt::sc_int_base" }
%"class.sc_dt::sc_int.4" = type { %"class.sc_dt::sc_int_base" }
%"class.sc_dt::sc_int.5" = type { %"class.sc_dt::sc_int_base" }
%"class.sc_dt::sc_int.6" = type { %"class.sc_dt::sc_int_base" }
%"class.sc_dt::sc_int.7" = type { %"class.sc_dt::sc_int_base" }
%"class.sc_dt::sc_int.8" = type { %"class.sc_dt::sc_int_base" }
%"class.sc_dt::sc_int.9" = type { %"class.sc_dt::sc_int_base" }
%"class.sc_dt::sc_int.107" = type { %"class.sc_dt::sc_int_base" }
%"class.sc_dt::sc_unsigned" = type { %"class.sc_dt::sc_value_base", i32, i32, i32, ptr }
%"class.sc_dt::sc_int.108" = type { %"class.sc_dt::sc_int_base" }
%"class.sc_dt::sc_int.109" = type { %"class.sc_dt::sc_int_base" }
%struct.EXC_CTRL = type { %"class.sc_core::sc_module", %"class.sc_core::sc_in", %"class.sc_core::sc_in", %"class.sc_core::sc_in", %"class.sc_core::sc_in.23", %"class.sc_core::sc_in.31", %"class.sc_core::sc_in.39", %"class.sc_core::sc_in", %"class.sc_core::sc_in.47", %"class.sc_core::sc_in", %"class.sc_core::sc_in", %"class.sc_core::sc_in.31", %"class.sc_core::sc_in", %"class.sc_core::sc_out", %"class.sc_core::sc_out.62", %"class.sc_core::sc_out.71", %"class.sc_core::sc_out", %"class.sc_core::sc_out", %"class.sc_core::sc_out", %"class.sc_core::sc_out.80", %"class.sc_core::sc_out.89", %"class.sc_core::sc_out", %"class.sc_core::sc_out.98", %"class.sc_core::sc_out.62", %"class.sc_core::sc_out.62", %"class.sc_core::sc_out.89" }
%"class.sc_core::sc_module" = type { %"class.sc_core::sc_object", %"class.sc_core::sc_process_host", %"class.sc_core::sc_sensitive", %"class.sc_core::sc_sensitive_pos", %"class.sc_core::sc_sensitive_neg", i8, ptr, i32, ptr, ptr }
%"class.sc_core::sc_object" = type { ptr, ptr, %"class.std::vector", %"class.std::vector.10", %"class.std::__cxx11::basic_string", ptr, ptr }
%"class.std::vector" = type { %"struct.std::_Vector_base" }
%"struct.std::_Vector_base" = type { %"struct.std::_Vector_base<sc_core::sc_event *, std::allocator<sc_core::sc_event *>>::_Vector_impl" }
%"struct.std::_Vector_base<sc_core::sc_event *, std::allocator<sc_core::sc_event *>>::_Vector_impl" = type { %"struct.std::_Vector_base<sc_core::sc_event *, std::allocator<sc_core::sc_event *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<sc_core::sc_event *, std::allocator<sc_core::sc_event *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.10" = type { %"struct.std::_Vector_base.11" }
%"struct.std::_Vector_base.11" = type { %"struct.std::_Vector_base<sc_core::sc_object *, std::allocator<sc_core::sc_object *>>::_Vector_impl" }
%"struct.std::_Vector_base<sc_core::sc_object *, std::allocator<sc_core::sc_object *>>::_Vector_impl" = type { %"struct.std::_Vector_base<sc_core::sc_object *, std::allocator<sc_core::sc_object *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<sc_core::sc_object *, std::allocator<sc_core::sc_object *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char>::_Alloc_hider", i64, %union.anon }
%"struct.std::__cxx11::basic_string<char>::_Alloc_hider" = type { ptr }
%union.anon = type { i64, [8 x i8] }
%"class.sc_core::sc_process_host" = type { ptr }
%"class.sc_core::sc_sensitive" = type { ptr, i32, ptr }
%"class.sc_core::sc_sensitive_pos" = type { ptr, i32, ptr }
%"class.sc_core::sc_sensitive_neg" = type { ptr, i32, ptr }
%"class.sc_core::sc_in.23" = type { %"class.sc_core::sc_port.24", ptr, ptr }
%"class.sc_core::sc_port.24" = type { %"class.sc_core::sc_port_b.25" }
%"class.sc_core::sc_port_b.25" = type { %"class.sc_core::sc_port_base", ptr, %"class.std::vector.26" }
%"class.sc_core::sc_port_base" = type { %"class.sc_core::sc_object", ptr }
%"class.std::vector.26" = type { %"struct.std::_Vector_base.27" }
%"struct.std::_Vector_base.27" = type { %"struct.std::_Vector_base<sc_core::sc_signal_in_if<sc_dt::sc_int<16>> *, std::allocator<sc_core::sc_signal_in_if<sc_dt::sc_int<16>> *>>::_Vector_impl" }
%"struct.std::_Vector_base<sc_core::sc_signal_in_if<sc_dt::sc_int<16>> *, std::allocator<sc_core::sc_signal_in_if<sc_dt::sc_int<16>> *>>::_Vector_impl" = type { %"struct.std::_Vector_base<sc_core::sc_signal_in_if<sc_dt::sc_int<16>> *, std::allocator<sc_core::sc_signal_in_if<sc_dt::sc_int<16>> *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<sc_core::sc_signal_in_if<sc_dt::sc_int<16>> *, std::allocator<sc_core::sc_signal_in_if<sc_dt::sc_int<16>> *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.sc_core::sc_in.39" = type { %"class.sc_core::sc_port.40", ptr, ptr }
%"class.sc_core::sc_port.40" = type { %"class.sc_core::sc_port_b.41" }
%"class.sc_core::sc_port_b.41" = type { %"class.sc_core::sc_port_base", ptr, %"class.std::vector.42" }
%"class.std::vector.42" = type { %"struct.std::_Vector_base.43" }
%"struct.std::_Vector_base.43" = type { %"struct.std::_Vector_base<sc_core::sc_signal_in_if<sc_dt::sc_int<2>> *, std::allocator<sc_core::sc_signal_in_if<sc_dt::sc_int<2>> *>>::_Vector_impl" }
%"struct.std::_Vector_base<sc_core::sc_signal_in_if<sc_dt::sc_int<2>> *, std::allocator<sc_core::sc_signal_in_if<sc_dt::sc_int<2>> *>>::_Vector_impl" = type { %"struct.std::_Vector_base<sc_core::sc_signal_in_if<sc_dt::sc_int<2>> *, std::allocator<sc_core::sc_signal_in_if<sc_dt::sc_int<2>> *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<sc_core::sc_signal_in_if<sc_dt::sc_int<2>> *, std::allocator<sc_core::sc_signal_in_if<sc_dt::sc_int<2>> *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.sc_core::sc_in.47" = type { %"class.sc_core::sc_port.48", ptr, ptr }
%"class.sc_core::sc_port.48" = type { %"class.sc_core::sc_port_b.49" }
%"class.sc_core::sc_port_b.49" = type { %"class.sc_core::sc_port_base", ptr, %"class.std::vector.50" }
%"class.std::vector.50" = type { %"struct.std::_Vector_base.51" }
%"struct.std::_Vector_base.51" = type { %"struct.std::_Vector_base<sc_core::sc_signal_in_if<sc_dt::sc_int<14>> *, std::allocator<sc_core::sc_signal_in_if<sc_dt::sc_int<14>> *>>::_Vector_impl" }
%"struct.std::_Vector_base<sc_core::sc_signal_in_if<sc_dt::sc_int<14>> *, std::allocator<sc_core::sc_signal_in_if<sc_dt::sc_int<14>> *>>::_Vector_impl" = type { %"struct.std::_Vector_base<sc_core::sc_signal_in_if<sc_dt::sc_int<14>> *, std::allocator<sc_core::sc_signal_in_if<sc_dt::sc_int<14>> *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<sc_core::sc_signal_in_if<sc_dt::sc_int<14>> *, std::allocator<sc_core::sc_signal_in_if<sc_dt::sc_int<14>> *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.sc_core::sc_in.31" = type { %"class.sc_core::sc_port.32", ptr, ptr }
%"class.sc_core::sc_port.32" = type { %"class.sc_core::sc_port_b.33" }
%"class.sc_core::sc_port_b.33" = type { %"class.sc_core::sc_port_base", ptr, %"class.std::vector.34" }
%"class.std::vector.34" = type { %"struct.std::_Vector_base.35" }
%"struct.std::_Vector_base.35" = type { %"struct.std::_Vector_base<sc_core::sc_signal_in_if<sc_dt::sc_int<4>> *, std::allocator<sc_core::sc_signal_in_if<sc_dt::sc_int<4>> *>>::_Vector_impl" }
%"struct.std::_Vector_base<sc_core::sc_signal_in_if<sc_dt::sc_int<4>> *, std::allocator<sc_core::sc_signal_in_if<sc_dt::sc_int<4>> *>>::_Vector_impl" = type { %"struct.std::_Vector_base<sc_core::sc_signal_in_if<sc_dt::sc_int<4>> *, std::allocator<sc_core::sc_signal_in_if<sc_dt::sc_int<4>> *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<sc_core::sc_signal_in_if<sc_dt::sc_int<4>> *, std::allocator<sc_core::sc_signal_in_if<sc_dt::sc_int<4>> *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.sc_core::sc_in" = type { %"class.sc_core::sc_port", ptr, ptr, ptr, ptr }
%"class.sc_core::sc_port" = type { %"class.sc_core::sc_port_b" }
%"class.sc_core::sc_port_b" = type { %"class.sc_core::sc_port_base", ptr, %"class.std::vector.18" }
%"class.std::vector.18" = type { %"struct.std::_Vector_base.19" }
%"struct.std::_Vector_base.19" = type { %"struct.std::_Vector_base<sc_core::sc_signal_in_if<bool> *, std::allocator<sc_core::sc_signal_in_if<bool> *>>::_Vector_impl" }
%"struct.std::_Vector_base<sc_core::sc_signal_in_if<bool> *, std::allocator<sc_core::sc_signal_in_if<bool> *>>::_Vector_impl" = type { %"struct.std::_Vector_base<sc_core::sc_signal_in_if<bool> *, std::allocator<sc_core::sc_signal_in_if<bool> *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<sc_core::sc_signal_in_if<bool> *, std::allocator<sc_core::sc_signal_in_if<bool> *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.sc_core::sc_out.71" = type { %"class.sc_core::sc_inout.72" }
%"class.sc_core::sc_inout.72" = type { %"class.sc_core::sc_port.73", ptr, ptr, ptr }
%"class.sc_core::sc_port.73" = type { %"class.sc_core::sc_port_b.74" }
%"class.sc_core::sc_port_b.74" = type { %"class.sc_core::sc_port_base", ptr, %"class.std::vector.75" }
%"class.std::vector.75" = type { %"struct.std::_Vector_base.76" }
%"struct.std::_Vector_base.76" = type { %"struct.std::_Vector_base<sc_core::sc_signal_inout_if<sc_dt::sc_int<16>> *, std::allocator<sc_core::sc_signal_inout_if<sc_dt::sc_int<16>> *>>::_Vector_impl" }
%"struct.std::_Vector_base<sc_core::sc_signal_inout_if<sc_dt::sc_int<16>> *, std::allocator<sc_core::sc_signal_inout_if<sc_dt::sc_int<16>> *>>::_Vector_impl" = type { %"struct.std::_Vector_base<sc_core::sc_signal_inout_if<sc_dt::sc_int<16>> *, std::allocator<sc_core::sc_signal_inout_if<sc_dt::sc_int<16>> *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<sc_core::sc_signal_inout_if<sc_dt::sc_int<16>> *, std::allocator<sc_core::sc_signal_inout_if<sc_dt::sc_int<16>> *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.sc_core::sc_out.80" = type { %"class.sc_core::sc_inout.81" }
%"class.sc_core::sc_inout.81" = type { %"class.sc_core::sc_port.82", ptr, ptr, ptr }
%"class.sc_core::sc_port.82" = type { %"class.sc_core::sc_port_b.83" }
%"class.sc_core::sc_port_b.83" = type { %"class.sc_core::sc_port_base", ptr, %"class.std::vector.84" }
%"class.std::vector.84" = type { %"struct.std::_Vector_base.85" }
%"struct.std::_Vector_base.85" = type { %"struct.std::_Vector_base<sc_core::sc_signal_inout_if<sc_dt::sc_int<2>> *, std::allocator<sc_core::sc_signal_inout_if<sc_dt::sc_int<2>> *>>::_Vector_impl" }
%"struct.std::_Vector_base<sc_core::sc_signal_inout_if<sc_dt::sc_int<2>> *, std::allocator<sc_core::sc_signal_inout_if<sc_dt::sc_int<2>> *>>::_Vector_impl" = type { %"struct.std::_Vector_base<sc_core::sc_signal_inout_if<sc_dt::sc_int<2>> *, std::allocator<sc_core::sc_signal_inout_if<sc_dt::sc_int<2>> *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<sc_core::sc_signal_inout_if<sc_dt::sc_int<2>> *, std::allocator<sc_core::sc_signal_inout_if<sc_dt::sc_int<2>> *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.sc_core::sc_out" = type { %"class.sc_core::sc_inout" }
%"class.sc_core::sc_inout" = type { %"class.sc_core::sc_port.55", ptr, ptr, ptr, ptr, ptr }
%"class.sc_core::sc_port.55" = type { %"class.sc_core::sc_port_b.56" }
%"class.sc_core::sc_port_b.56" = type { %"class.sc_core::sc_port_base", ptr, %"class.std::vector.57" }
%"class.std::vector.57" = type { %"struct.std::_Vector_base.58" }
%"struct.std::_Vector_base.58" = type { %"struct.std::_Vector_base<sc_core::sc_signal_inout_if<bool> *, std::allocator<sc_core::sc_signal_inout_if<bool> *>>::_Vector_impl" }
%"struct.std::_Vector_base<sc_core::sc_signal_inout_if<bool> *, std::allocator<sc_core::sc_signal_inout_if<bool> *>>::_Vector_impl" = type { %"struct.std::_Vector_base<sc_core::sc_signal_inout_if<bool> *, std::allocator<sc_core::sc_signal_inout_if<bool> *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<sc_core::sc_signal_inout_if<bool> *, std::allocator<sc_core::sc_signal_inout_if<bool> *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.sc_core::sc_out.98" = type { %"class.sc_core::sc_inout.99" }
%"class.sc_core::sc_inout.99" = type { %"class.sc_core::sc_port.100", ptr, ptr, ptr }
%"class.sc_core::sc_port.100" = type { %"class.sc_core::sc_port_b.101" }
%"class.sc_core::sc_port_b.101" = type { %"class.sc_core::sc_port_base", ptr, %"class.std::vector.102" }
%"class.std::vector.102" = type { %"struct.std::_Vector_base.103" }
%"struct.std::_Vector_base.103" = type { %"struct.std::_Vector_base<sc_core::sc_signal_inout_if<sc_dt::sc_int<7>> *, std::allocator<sc_core::sc_signal_inout_if<sc_dt::sc_int<7>> *>>::_Vector_impl" }
%"struct.std::_Vector_base<sc_core::sc_signal_inout_if<sc_dt::sc_int<7>> *, std::allocator<sc_core::sc_signal_inout_if<sc_dt::sc_int<7>> *>>::_Vector_impl" = type { %"struct.std::_Vector_base<sc_core::sc_signal_inout_if<sc_dt::sc_int<7>> *, std::allocator<sc_core::sc_signal_inout_if<sc_dt::sc_int<7>> *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<sc_core::sc_signal_inout_if<sc_dt::sc_int<7>> *, std::allocator<sc_core::sc_signal_inout_if<sc_dt::sc_int<7>> *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.sc_core::sc_out.62" = type { %"class.sc_core::sc_inout.63" }
%"class.sc_core::sc_inout.63" = type { %"class.sc_core::sc_port.64", ptr, ptr, ptr }
%"class.sc_core::sc_port.64" = type { %"class.sc_core::sc_port_b.65" }
%"class.sc_core::sc_port_b.65" = type { %"class.sc_core::sc_port_base", ptr, %"class.std::vector.66" }
%"class.std::vector.66" = type { %"struct.std::_Vector_base.67" }
%"struct.std::_Vector_base.67" = type { %"struct.std::_Vector_base<sc_core::sc_signal_inout_if<sc_dt::sc_int<14>> *, std::allocator<sc_core::sc_signal_inout_if<sc_dt::sc_int<14>> *>>::_Vector_impl" }
%"struct.std::_Vector_base<sc_core::sc_signal_inout_if<sc_dt::sc_int<14>> *, std::allocator<sc_core::sc_signal_inout_if<sc_dt::sc_int<14>> *>>::_Vector_impl" = type { %"struct.std::_Vector_base<sc_core::sc_signal_inout_if<sc_dt::sc_int<14>> *, std::allocator<sc_core::sc_signal_inout_if<sc_dt::sc_int<14>> *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<sc_core::sc_signal_inout_if<sc_dt::sc_int<14>> *, std::allocator<sc_core::sc_signal_inout_if<sc_dt::sc_int<14>> *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.sc_core::sc_out.89" = type { %"class.sc_core::sc_inout.90" }
%"class.sc_core::sc_inout.90" = type { %"class.sc_core::sc_port.91", ptr, ptr, ptr }
%"class.sc_core::sc_port.91" = type { %"class.sc_core::sc_port_b.92" }
%"class.sc_core::sc_port_b.92" = type { %"class.sc_core::sc_port_base", ptr, %"class.std::vector.93" }
%"class.std::vector.93" = type { %"struct.std::_Vector_base.94" }
%"struct.std::_Vector_base.94" = type { %"struct.std::_Vector_base<sc_core::sc_signal_inout_if<sc_dt::sc_int<3>> *, std::allocator<sc_core::sc_signal_inout_if<sc_dt::sc_int<3>> *>>::_Vector_impl" }
%"struct.std::_Vector_base<sc_core::sc_signal_inout_if<sc_dt::sc_int<3>> *, std::allocator<sc_core::sc_signal_inout_if<sc_dt::sc_int<3>> *>>::_Vector_impl" = type { %"struct.std::_Vector_base<sc_core::sc_signal_inout_if<sc_dt::sc_int<3>> *, std::allocator<sc_core::sc_signal_inout_if<sc_dt::sc_int<3>> *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<sc_core::sc_signal_inout_if<sc_dt::sc_int<3>> *, std::allocator<sc_core::sc_signal_inout_if<sc_dt::sc_int<3>> *>>::_Vector_impl_data" = type { ptr, ptr, ptr }

; Function Attrs: mustprogress uwtable
define dso_local void @_ZN8EXC_CTRL12start_alwaysEv(ptr noundef nonnull align 8 dereferenceable(4728) %0) #0 align 2 personality ptr @__gxx_personality_v0 {
  %2 = alloca ptr, align 8
  %3 = alloca %"class.sc_dt::sc_int", align 8
  %4 = alloca %"class.sc_dt::sc_int", align 8
  %5 = alloca ptr, align 8
  %6 = alloca i32, align 4
  %7 = alloca %"class.sc_dt::sc_int.0", align 8
  %8 = alloca %"class.sc_dt::sc_int.1", align 8
  %9 = alloca %"class.sc_dt::sc_int.1", align 8
  %10 = alloca %"class.sc_dt::sc_int.1", align 8
  %11 = alloca %"class.sc_dt::sc_int.1", align 8
  %12 = alloca %"class.sc_dt::sc_int.1", align 8
  %13 = alloca %"class.sc_dt::sc_int.0", align 8
  %14 = alloca i8, align 1
  %15 = alloca %"class.sc_dt::sc_int.2", align 8
  %16 = alloca %"class.sc_dt::sc_int.2", align 8
  %17 = alloca %"class.sc_dt::sc_int.3", align 8
  %18 = alloca %"class.sc_dt::sc_int.4", align 8
  %19 = alloca %"class.sc_dt::sc_int.5", align 8
  %20 = alloca %"class.sc_dt::sc_int.5", align 8
  %21 = alloca %"class.sc_dt::sc_int.6", align 8
  %22 = alloca %"class.sc_dt::sc_int.7", align 8
  %23 = alloca %"class.sc_dt::sc_int.3", align 8
  %24 = alloca %"class.sc_dt::sc_int.0", align 8
  %25 = alloca %"class.sc_dt::sc_int.0", align 8
  %26 = alloca %"class.sc_dt::sc_int.4", align 8
  %27 = alloca %"class.sc_dt::sc_int.5", align 8
  %28 = alloca %"class.sc_dt::sc_int.2", align 8
  %29 = alloca %"class.sc_dt::sc_int.2", align 8
  %30 = alloca i8, align 1
  %31 = alloca i8, align 1
  %32 = alloca %"class.sc_dt::sc_int.6", align 8
  %33 = alloca %"class.sc_dt::sc_int.8", align 8
  %34 = alloca i8, align 1
  %35 = alloca %"class.sc_dt::sc_int.9", align 8
  %36 = alloca %"class.sc_dt::sc_int.9", align 8
  %37 = alloca %"class.sc_dt::sc_int", align 8
  %38 = alloca %"class.sc_dt::sc_int", align 8
  %39 = alloca %"class.sc_dt::sc_int.8", align 8
  %40 = alloca i8, align 1
  %41 = alloca i8, align 1
  %42 = alloca i8, align 1
  %43 = alloca i8, align 1
  %44 = alloca i8, align 1
  %45 = alloca i8, align 1
  %46 = alloca i8, align 1
  %47 = alloca i8, align 1
  %48 = alloca i8, align 1
  %49 = alloca i8, align 1
  %50 = alloca i8, align 1
  %51 = alloca i8, align 1
  %52 = alloca i8, align 1
  %53 = alloca i8, align 1
  %54 = alloca i8, align 1
  %55 = alloca i8, align 1
  %56 = alloca %"class.sc_dt::sc_int.1", align 8
  %57 = alloca %"class.sc_dt::sc_int.1", align 8
  %58 = alloca %"class.sc_dt::sc_int.5", align 8
  %59 = alloca %"class.sc_dt::sc_int.8", align 8
  %60 = alloca i8, align 1
  %61 = alloca i8, align 1
  %62 = alloca %"class.sc_dt::sc_int.1", align 8
  %63 = alloca %"class.sc_dt::sc_int", align 8
  %64 = alloca i8, align 1
  %65 = alloca i8, align 1
  %66 = alloca i8, align 1
  %67 = alloca %"class.sc_dt::sc_int.1", align 8
  %68 = alloca %"class.sc_dt::sc_int.8", align 8
  %69 = alloca i8, align 1
  %70 = alloca i8, align 1
  %71 = alloca %"class.sc_dt::sc_int.1", align 8
  %72 = alloca %"class.sc_dt::sc_int", align 8
  %73 = alloca i8, align 1
  %74 = alloca i8, align 1
  %75 = alloca i8, align 1
  %76 = alloca %"class.sc_dt::sc_int.1", align 8
  %77 = alloca %"class.sc_dt::sc_int.1", align 8
  %78 = alloca %"class.sc_dt::sc_int.5", align 8
  %79 = alloca %"class.sc_dt::sc_int.8", align 8
  %80 = alloca i8, align 1
  %81 = alloca i8, align 1
  %82 = alloca %"class.sc_dt::sc_int.5", align 8
  %83 = alloca %"class.sc_dt::sc_int.5", align 8
  %84 = alloca %"class.sc_dt::sc_int.1", align 8
  %85 = alloca %"class.sc_dt::sc_int.1", align 8
  %86 = alloca %"class.sc_dt::sc_int.8", align 8
  %87 = alloca i8, align 1
  %88 = alloca i8, align 1
  %89 = alloca i8, align 1
  %90 = alloca i8, align 1
  %91 = alloca i8, align 1
  %92 = alloca %"class.sc_dt::sc_int.1", align 8
  %93 = alloca %"class.sc_dt::sc_int.8", align 8
  %94 = alloca i8, align 1
  %95 = alloca i8, align 1
  %96 = alloca i8, align 1
  %97 = alloca i8, align 1
  %98 = alloca i8, align 1
  %99 = alloca %"class.sc_dt::sc_int.1", align 8
  %100 = alloca %"class.sc_dt::sc_int.1", align 8
  %101 = alloca %"class.sc_dt::sc_int.5", align 8
  %102 = alloca %"class.sc_dt::sc_int.8", align 8
  %103 = alloca i8, align 1
  %104 = alloca i8, align 1
  %105 = alloca %"class.sc_dt::sc_int.1", align 8
  %106 = alloca %"class.sc_dt::sc_int.8", align 8
  %107 = alloca i8, align 1
  %108 = alloca i8, align 1
  %109 = alloca %"class.sc_dt::sc_int.1", align 8
  %110 = alloca %"class.sc_dt::sc_int.1", align 8
  %111 = alloca %"class.sc_dt::sc_int.8", align 8
  %112 = alloca i8, align 1
  %113 = alloca i8, align 1
  %114 = alloca %"class.sc_dt::sc_int.1", align 8
  %115 = alloca %"class.sc_dt::sc_int.8", align 8
  %116 = alloca i8, align 1
  %117 = alloca i8, align 1
  %118 = alloca i8, align 1
  %119 = alloca i8, align 1
  %120 = alloca i8, align 1
  %121 = alloca i8, align 1
  %122 = alloca i8, align 1
  %123 = alloca i8, align 1
  %124 = alloca %"class.sc_dt::sc_int.107", align 8
  %125 = alloca %"class.sc_dt::sc_int.107", align 8
  %126 = alloca %"class.sc_dt::sc_int.0", align 8
  %127 = alloca i8, align 1
  %128 = alloca i8, align 1
  %129 = alloca i8, align 1
  %130 = alloca %"class.sc_dt::sc_int.107", align 8
  %131 = alloca %"class.sc_dt::sc_int.107", align 8
  %132 = alloca %"class.sc_dt::sc_int.0", align 8
  %133 = alloca i8, align 1
  %134 = alloca i8, align 1
  %135 = alloca i8, align 1
  %136 = alloca %"class.sc_dt::sc_int.1", align 8
  %137 = alloca %"class.sc_dt::sc_int.8", align 8
  %138 = alloca i8, align 1
  %139 = alloca i8, align 1
  %140 = alloca i8, align 1
  %141 = alloca i8, align 1
  %142 = alloca i8, align 1
  %143 = alloca i8, align 1
  %144 = alloca i8, align 1
  %145 = alloca %"class.sc_dt::sc_int.5", align 8
  %146 = alloca i8, align 1
  %147 = alloca i8, align 1
  %148 = alloca i8, align 1
  %149 = alloca %"class.sc_dt::sc_unsigned", align 8
  %150 = alloca %"class.sc_dt::sc_int.7", align 8
  %151 = alloca i8, align 1
  %152 = alloca i8, align 1
  %153 = alloca i8, align 1
  %154 = alloca i8, align 1
  %155 = alloca %"class.sc_dt::sc_int.5", align 8
  %156 = alloca i8, align 1
  %157 = alloca i8, align 1
  %158 = alloca i8, align 1
  %159 = alloca %"class.sc_dt::sc_int.1", align 8
  %160 = alloca %"class.sc_dt::sc_int.7", align 8
  %161 = alloca %"class.sc_dt::sc_int.7", align 8
  %162 = alloca %"class.sc_dt::sc_int.107", align 8
  %163 = alloca %"class.sc_dt::sc_int.1", align 8
  %164 = alloca %"class.sc_dt::sc_int.0", align 8
  %165 = alloca %"class.sc_dt::sc_int.107", align 8
  %166 = alloca %"class.sc_dt::sc_int.8", align 8
  %167 = alloca i8, align 1
  %168 = alloca i8, align 1
  %169 = alloca %"class.sc_dt::sc_int.1", align 8
  %170 = alloca %"class.sc_dt::sc_int.1", align 8
  %171 = alloca %"class.sc_dt::sc_int.5", align 8
  %172 = alloca %"class.sc_dt::sc_int.8", align 8
  %173 = alloca i8, align 1
  %174 = alloca i8, align 1
  %175 = alloca %"class.sc_dt::sc_int.1", align 8
  %176 = alloca i8, align 1
  %177 = alloca i8, align 1
  %178 = alloca i8, align 1
  %179 = alloca %"class.sc_dt::sc_int.1", align 8
  %180 = alloca %"class.sc_dt::sc_int.7", align 8
  %181 = alloca %"class.sc_dt::sc_int.7", align 8
  %182 = alloca %"class.sc_dt::sc_int.107", align 8
  %183 = alloca %"class.sc_dt::sc_int.1", align 8
  %184 = alloca %"class.sc_dt::sc_int.0", align 8
  %185 = alloca %"class.sc_dt::sc_int.107", align 8
  %186 = alloca %"class.sc_dt::sc_int.8", align 8
  %187 = alloca i8, align 1
  %188 = alloca i8, align 1
  %189 = alloca %"class.sc_dt::sc_int.1", align 8
  %190 = alloca %"class.sc_dt::sc_int.1", align 8
  %191 = alloca %"class.sc_dt::sc_int.5", align 8
  %192 = alloca %"class.sc_dt::sc_int.8", align 8
  %193 = alloca i8, align 1
  %194 = alloca i8, align 1
  %195 = alloca %"class.sc_dt::sc_int.5", align 8
  %196 = alloca i8, align 1
  %197 = alloca i8, align 1
  %198 = alloca i8, align 1
  %199 = alloca %"class.sc_dt::sc_int.5", align 8
  %200 = alloca i8, align 1
  %201 = alloca i8, align 1
  %202 = alloca i8, align 1
  %203 = alloca i8, align 1
  %204 = alloca i8, align 1
  %205 = alloca i8, align 1
  %206 = alloca i8, align 1
  %207 = alloca i8, align 1
  %208 = alloca i8, align 1
  %209 = alloca %"class.sc_dt::sc_int.1", align 8
  %210 = alloca %"class.sc_dt::sc_int.5", align 8
  %211 = alloca %"class.sc_dt::sc_int.1", align 8
  %212 = alloca %"class.sc_dt::sc_int.5", align 8
  %213 = alloca %"class.sc_dt::sc_int.107", align 8
  %214 = alloca %"class.sc_dt::sc_int.107", align 8
  %215 = alloca %"class.sc_dt::sc_int.8", align 8
  %216 = alloca i8, align 1
  %217 = alloca i8, align 1
  %218 = alloca %"class.sc_dt::sc_int.1", align 8
  %219 = alloca %"class.sc_dt::sc_int.1", align 8
  %220 = alloca %"class.sc_dt::sc_int.8", align 8
  %221 = alloca i8, align 1
  %222 = alloca i8, align 1
  %223 = alloca %"class.sc_dt::sc_int.5", align 8
  %224 = alloca i8, align 1
  %225 = alloca i8, align 1
  %226 = alloca i8, align 1
  %227 = alloca %"class.sc_dt::sc_int.5", align 8
  %228 = alloca i8, align 1
  %229 = alloca i8, align 1
  %230 = alloca i8, align 1
  %231 = alloca %"class.sc_dt::sc_int.1", align 8
  %232 = alloca %"class.sc_dt::sc_int.5", align 8
  %233 = alloca %"class.sc_dt::sc_int.8", align 8
  %234 = alloca i8, align 1
  %235 = alloca i8, align 1
  %236 = alloca %"class.sc_dt::sc_int.5", align 8
  %237 = alloca i8, align 1
  %238 = alloca i8, align 1
  %239 = alloca i8, align 1
  %240 = alloca %"class.sc_dt::sc_int.8", align 8
  %241 = alloca %"class.sc_dt::sc_int.108", align 8
  %242 = alloca %"class.sc_dt::sc_int.8", align 8
  %243 = alloca %"class.sc_dt::sc_int.108", align 8
  %244 = alloca %"class.sc_dt::sc_int.5", align 8
  %245 = alloca i8, align 1
  %246 = alloca i8, align 1
  %247 = alloca i8, align 1
  %248 = alloca %"class.sc_dt::sc_int.3", align 8
  %249 = alloca i8, align 1
  %250 = alloca i8, align 1
  %251 = alloca i8, align 1
  %252 = alloca i8, align 1
  %253 = alloca i8, align 1
  %254 = alloca i8, align 1
  %255 = alloca %"class.sc_dt::sc_int.3", align 8
  %256 = alloca i8, align 1
  %257 = alloca i8, align 1
  %258 = alloca i8, align 1
  %259 = alloca i8, align 1
  %260 = alloca i8, align 1
  %261 = alloca i8, align 1
  %262 = alloca %"class.sc_dt::sc_int.5", align 8
  %263 = alloca i8, align 1
  %264 = alloca i8, align 1
  %265 = alloca i8, align 1
  %266 = alloca i8, align 1
  %267 = alloca i8, align 1
  %268 = alloca i8, align 1
  %269 = alloca i8, align 1
  %270 = alloca i8, align 1
  %271 = alloca i8, align 1
  %272 = alloca %"class.sc_dt::sc_int.1", align 8
  %273 = alloca %"class.sc_dt::sc_int.5", align 8
  %274 = alloca %"class.sc_dt::sc_int.1", align 8
  %275 = alloca %"class.sc_dt::sc_int.5", align 8
  %276 = alloca %"class.sc_dt::sc_int.107", align 8
  %277 = alloca %"class.sc_dt::sc_int.107", align 8
  %278 = alloca %"class.sc_dt::sc_int.8", align 8
  %279 = alloca i8, align 1
  %280 = alloca i8, align 1
  %281 = alloca %"class.sc_dt::sc_int.1", align 8
  %282 = alloca %"class.sc_dt::sc_int.1", align 8
  %283 = alloca %"class.sc_dt::sc_int.8", align 8
  %284 = alloca i8, align 1
  %285 = alloca i8, align 1
  %286 = alloca %"class.sc_dt::sc_int.5", align 8
  %287 = alloca i8, align 1
  %288 = alloca i8, align 1
  %289 = alloca i8, align 1
  %290 = alloca %"class.sc_dt::sc_int.3", align 8
  %291 = alloca i8, align 1
  %292 = alloca i8, align 1
  %293 = alloca i8, align 1
  %294 = alloca %"class.sc_dt::sc_int.5", align 8
  %295 = alloca i8, align 1
  %296 = alloca i8, align 1
  %297 = alloca i8, align 1
  %298 = alloca i8, align 1
  %299 = alloca i8, align 1
  %300 = alloca i8, align 1
  %301 = alloca %"class.sc_dt::sc_int.5", align 8
  %302 = alloca i8, align 1
  %303 = alloca i8, align 1
  %304 = alloca i8, align 1
  %305 = alloca %"class.sc_dt::sc_int.1", align 8
  %306 = alloca %"class.sc_dt::sc_int.5", align 8
  %307 = alloca %"class.sc_dt::sc_int.8", align 8
  %308 = alloca i8, align 1
  %309 = alloca i8, align 1
  %310 = alloca %"class.sc_dt::sc_int.5", align 8
  %311 = alloca i8, align 1
  %312 = alloca i8, align 1
  %313 = alloca i8, align 1
  %314 = alloca %"class.sc_dt::sc_int.5", align 8
  %315 = alloca i8, align 1
  %316 = alloca i8, align 1
  %317 = alloca i8, align 1
  %318 = alloca %"class.sc_dt::sc_int.5", align 8
  %319 = alloca i8, align 1
  %320 = alloca i8, align 1
  %321 = alloca i8, align 1
  %322 = alloca %"class.sc_dt::sc_int.5", align 8
  %323 = alloca i8, align 1
  %324 = alloca i8, align 1
  %325 = alloca i8, align 1
  %326 = alloca %"class.sc_dt::sc_int.5", align 8
  %327 = alloca i8, align 1
  %328 = alloca i8, align 1
  %329 = alloca i8, align 1
  %330 = alloca %"class.sc_dt::sc_int.5", align 8
  %331 = alloca %"class.sc_dt::sc_int.7", align 8
  %332 = alloca i8, align 1
  %333 = alloca i8, align 1
  %334 = alloca i8, align 1
  %335 = alloca %"class.sc_dt::sc_int.1", align 8
  %336 = alloca %"class.sc_dt::sc_int.5", align 8
  %337 = alloca %"class.sc_dt::sc_int.1", align 8
  %338 = alloca %"class.sc_dt::sc_int.5", align 8
  %339 = alloca %"class.sc_dt::sc_int.5", align 8
  %340 = alloca %"class.sc_dt::sc_int.8", align 8
  %341 = alloca i8, align 1
  %342 = alloca i8, align 1
  %343 = alloca %"class.sc_dt::sc_int.1", align 8
  %344 = alloca %"class.sc_dt::sc_int.5", align 8
  %345 = alloca %"class.sc_dt::sc_int.8", align 8
  %346 = alloca i8, align 1
  %347 = alloca i8, align 1
  %348 = alloca %"class.sc_dt::sc_int.5", align 8
  %349 = alloca i8, align 1
  %350 = alloca i8, align 1
  %351 = alloca i8, align 1
  %352 = alloca %"class.sc_dt::sc_int.5", align 8
  %353 = alloca i8, align 1
  %354 = alloca i8, align 1
  %355 = alloca i8, align 1
  %356 = alloca %"class.sc_dt::sc_int.5", align 8
  %357 = alloca i8, align 1
  %358 = alloca i8, align 1
  %359 = alloca i8, align 1
  %360 = alloca %"class.sc_dt::sc_int.5", align 8
  %361 = alloca i8, align 1
  %362 = alloca i8, align 1
  %363 = alloca i8, align 1
  %364 = alloca %"class.sc_dt::sc_int.5", align 8
  %365 = alloca %"class.sc_dt::sc_int.109", align 8
  %366 = alloca i8, align 1
  %367 = alloca i8, align 1
  %368 = alloca i8, align 1
  %369 = alloca %"class.sc_dt::sc_int.1", align 8
  %370 = alloca %"class.sc_dt::sc_int.1", align 8
  %371 = alloca %"class.sc_dt::sc_int.1", align 8
  %372 = alloca %"class.sc_dt::sc_int.5", align 8
  %373 = alloca %"class.sc_dt::sc_int.5", align 8
  %374 = alloca %"class.sc_dt::sc_int.8", align 8
  %375 = alloca i8, align 1
  %376 = alloca i8, align 1
  %377 = alloca %"class.sc_dt::sc_int.1", align 8
  %378 = alloca %"class.sc_dt::sc_int.1", align 8
  %379 = alloca %"class.sc_dt::sc_int.1", align 8
  %380 = alloca %"class.sc_dt::sc_int.5", align 8
  %381 = alloca %"class.sc_dt::sc_int.5", align 8
  %382 = alloca %"class.sc_dt::sc_int.8", align 8
  %383 = alloca i8, align 1
  %384 = alloca i8, align 1
  %385 = alloca %"class.sc_dt::sc_int.1", align 8
  %386 = alloca %"class.sc_dt::sc_int.1", align 8
  %387 = alloca %"class.sc_dt::sc_int.1", align 8
  %388 = alloca %"class.sc_dt::sc_int.5", align 8
  %389 = alloca %"class.sc_dt::sc_int.5", align 8
  %390 = alloca %"class.sc_dt::sc_int.8", align 8
  %391 = alloca i8, align 1
  %392 = alloca i8, align 1
  %393 = alloca %"class.sc_dt::sc_int.5", align 8
  %394 = alloca %"class.sc_dt::sc_int.5", align 8
  %395 = alloca %"class.sc_dt::sc_int.1", align 8
  %396 = alloca %"class.sc_dt::sc_int.1", align 8
  %397 = alloca %"class.sc_dt::sc_int.1", align 8
  %398 = alloca %"class.sc_dt::sc_int.5", align 8
  %399 = alloca %"class.sc_dt::sc_int.8", align 8
  %400 = alloca i8, align 1
  %401 = alloca i8, align 1
  %402 = alloca %"class.sc_dt::sc_int.1", align 8
  %403 = alloca %"class.sc_dt::sc_int.1", align 8
  %404 = alloca %"class.sc_dt::sc_int.1", align 8
  %405 = alloca %"class.sc_dt::sc_int.5", align 8
  %406 = alloca %"class.sc_dt::sc_int.5", align 8
  %407 = alloca %"class.sc_dt::sc_int.8", align 8
  %408 = alloca i8, align 1
  %409 = alloca i8, align 1
  %410 = alloca %"class.sc_dt::sc_int.1", align 8
  %411 = alloca %"class.sc_dt::sc_int.1", align 8
  %412 = alloca %"class.sc_dt::sc_int.5", align 8
  %413 = alloca %"class.sc_dt::sc_int.5", align 8
  %414 = alloca %"class.sc_dt::sc_int.8", align 8
  %415 = alloca i8, align 1
  %416 = alloca i8, align 1
  %417 = alloca %"class.sc_dt::sc_int.1", align 8
  %418 = alloca %"class.sc_dt::sc_int.5", align 8
  %419 = alloca %"class.sc_dt::sc_int.5", align 8
  %420 = alloca %"class.sc_dt::sc_int.8", align 8
  %421 = alloca i8, align 1
  %422 = alloca i8, align 1
  %423 = alloca i8, align 1
  %424 = alloca i8, align 1
  %425 = alloca i8, align 1
  %426 = alloca %"class.sc_dt::sc_int.5", align 8
  %427 = alloca i8, align 1
  %428 = alloca i8, align 1
  %429 = alloca i8, align 1
  %430 = alloca %"class.sc_dt::sc_int.5", align 8
  %431 = alloca %"class.sc_dt::sc_int.5", align 8
  %432 = alloca i8, align 1
  %433 = alloca i8, align 1
  %434 = alloca i8, align 1
  %435 = alloca %"class.sc_dt::sc_int.8", align 8
  %436 = alloca i8, align 1
  %437 = alloca i8, align 1
  %438 = alloca %"class.sc_dt::sc_int.1", align 8
  %439 = alloca i8, align 1
  %440 = alloca i8, align 1
  %441 = alloca i8, align 1
  %442 = alloca %"class.sc_dt::sc_int.5", align 8
  %443 = alloca %"class.sc_dt::sc_int.8", align 8
  %444 = alloca i8, align 1
  %445 = alloca i8, align 1
  %446 = alloca i8, align 1
  %447 = alloca %"class.sc_dt::sc_int.5", align 8
  %448 = alloca i8, align 1
  %449 = alloca i8, align 1
  %450 = alloca i8, align 1
  %451 = alloca %"class.sc_dt::sc_int.0", align 8
  %452 = alloca i8, align 1
  %453 = alloca i8, align 1
  %454 = alloca i8, align 1
  %455 = alloca %"class.sc_dt::sc_int.5", align 8
  %456 = alloca i8, align 1
  %457 = alloca i8, align 1
  %458 = alloca i8, align 1
  %459 = alloca %"class.sc_dt::sc_int.1", align 8
  %460 = alloca %"class.sc_dt::sc_int.1", align 8
  %461 = alloca %"class.sc_dt::sc_int.6", align 8
  %462 = alloca %"class.sc_dt::sc_int.5", align 8
  %463 = alloca %"class.sc_dt::sc_int.107", align 8
  %464 = alloca %"class.sc_dt::sc_int.8", align 8
  %465 = alloca i8, align 1
  %466 = alloca i8, align 1
  %467 = alloca %"class.sc_dt::sc_int.1", align 8
  %468 = alloca %"class.sc_dt::sc_int.0", align 8
  %469 = alloca %"class.sc_dt::sc_int.1", align 8
  %470 = alloca %"class.sc_dt::sc_int.6", align 8
  %471 = alloca %"class.sc_dt::sc_int.8", align 8
  %472 = alloca i8, align 1
  %473 = alloca i8, align 1
  %474 = alloca %"class.sc_dt::sc_int.1", align 8
  %475 = alloca %"class.sc_dt::sc_int.5", align 8
  %476 = alloca %"class.sc_dt::sc_int.8", align 8
  %477 = alloca i8, align 1
  %478 = alloca i8, align 1
  %479 = alloca %"class.sc_dt::sc_int.5", align 8
  %480 = alloca i8, align 1
  %481 = alloca i8, align 1
  %482 = alloca i8, align 1
  %483 = alloca %"class.sc_dt::sc_int.5", align 8
  %484 = alloca i8, align 1
  %485 = alloca i8, align 1
  %486 = alloca i8, align 1
  %487 = alloca %"class.sc_dt::sc_int.5", align 8
  %488 = alloca i8, align 1
  %489 = alloca i8, align 1
  %490 = alloca i8, align 1
  %491 = alloca %"class.sc_dt::sc_int.107", align 8
  %492 = alloca i8, align 1
  %493 = alloca i8, align 1
  %494 = alloca i8, align 1
  %495 = alloca %"class.sc_dt::sc_int.1", align 8
  %496 = alloca %"class.sc_dt::sc_int.5", align 8
  %497 = alloca %"class.sc_dt::sc_int.5", align 8
  %498 = alloca %"class.sc_dt::sc_int.8", align 8
  %499 = alloca i8, align 1
  %500 = alloca i8, align 1
  %501 = alloca %"class.sc_dt::sc_int.1", align 8
  %502 = alloca %"class.sc_dt::sc_int.5", align 8
  %503 = alloca %"class.sc_dt::sc_int.5", align 8
  %504 = alloca %"class.sc_dt::sc_int.1", align 8
  %505 = alloca %"class.sc_dt::sc_int.1", align 8
  %506 = alloca %"class.sc_dt::sc_int.8", align 8
  %507 = alloca i8, align 1
  %508 = alloca i8, align 1
  %509 = alloca %"class.sc_dt::sc_int.1", align 8
  %510 = alloca %"class.sc_dt::sc_int.5", align 8
  %511 = alloca %"class.sc_dt::sc_int.5", align 8
  %512 = alloca %"class.sc_dt::sc_int.1", align 8
  %513 = alloca %"class.sc_dt::sc_int.1", align 8
  %514 = alloca %"class.sc_dt::sc_int.8", align 8
  %515 = alloca i8, align 1
  %516 = alloca i8, align 1
  %517 = alloca %"class.sc_dt::sc_int.1", align 8
  %518 = alloca %"class.sc_dt::sc_int.5", align 8
  %519 = alloca %"class.sc_dt::sc_int.5", align 8
  %520 = alloca %"class.sc_dt::sc_int.5", align 8
  %521 = alloca %"class.sc_dt::sc_int.1", align 8
  %522 = alloca %"class.sc_dt::sc_int.1", align 8
  %523 = alloca %"class.sc_dt::sc_int.8", align 8
  %524 = alloca i8, align 1
  %525 = alloca i8, align 1
  %526 = alloca %"class.sc_dt::sc_int.5", align 8
  %527 = alloca %"class.sc_dt::sc_int.5", align 8
  %528 = alloca %"class.sc_dt::sc_int.8", align 8
  %529 = alloca i8, align 1
  %530 = alloca i8, align 1
  %531 = alloca %"class.sc_dt::sc_int.1", align 8
  %532 = alloca %"class.sc_dt::sc_int.5", align 8
  %533 = alloca %"class.sc_dt::sc_int.1", align 8
  %534 = alloca %"class.sc_dt::sc_int.5", align 8
  %535 = alloca %"class.sc_dt::sc_int.8", align 8
  %536 = alloca i8, align 1
  %537 = alloca i8, align 1
  %538 = alloca %"class.sc_dt::sc_int.5", align 8
  %539 = alloca i8, align 1
  %540 = alloca i8, align 1
  %541 = alloca i8, align 1
  %542 = alloca %"class.sc_dt::sc_int.5", align 8
  %543 = alloca i8, align 1
  %544 = alloca i8, align 1
  %545 = alloca i8, align 1
  %546 = alloca i8, align 1
  %547 = alloca i8, align 1
  %548 = alloca i8, align 1
  %549 = alloca %"class.sc_dt::sc_int.5", align 8
  %550 = alloca %"class.sc_dt::sc_int.5", align 8
  %551 = alloca i8, align 1
  %552 = alloca i8, align 1
  %553 = alloca i8, align 1
  %554 = alloca %"class.sc_dt::sc_int.107", align 8
  %555 = alloca %"class.sc_dt::sc_int.0", align 8
  %556 = alloca %"class.sc_dt::sc_int.1", align 8
  %557 = alloca i8, align 1
  %558 = alloca i8, align 1
  %559 = alloca i8, align 1
  %560 = alloca %"class.sc_dt::sc_int.5", align 8
  %561 = alloca i8, align 1
  %562 = alloca i8, align 1
  %563 = alloca i8, align 1
  %564 = alloca i8, align 1
  %565 = alloca i8, align 1
  %566 = alloca i8, align 1
  %567 = alloca i8, align 1
  %568 = alloca i8, align 1
  %569 = alloca i8, align 1
  %570 = alloca %"class.sc_dt::sc_int.1", align 8
  %571 = alloca %"class.sc_dt::sc_int.5", align 8
  %572 = alloca %"class.sc_dt::sc_int.1", align 8
  %573 = alloca %"class.sc_dt::sc_int.6", align 8
  %574 = alloca %"class.sc_dt::sc_int.5", align 8
  %575 = alloca %"class.sc_dt::sc_int.8", align 8
  %576 = alloca i8, align 1
  %577 = alloca i8, align 1
  %578 = alloca %"class.sc_dt::sc_int.1", align 8
  %579 = alloca %"class.sc_dt::sc_int.3", align 8
  %580 = alloca %"class.sc_dt::sc_int.1", align 8
  %581 = alloca %"class.sc_dt::sc_int.6", align 8
  %582 = alloca %"class.sc_dt::sc_int.8", align 8
  %583 = alloca i8, align 1
  %584 = alloca i8, align 1
  %585 = alloca %"class.sc_dt::sc_int.5", align 8
  %586 = alloca i8, align 1
  %587 = alloca i8, align 1
  %588 = alloca i8, align 1
  %589 = alloca %"class.sc_dt::sc_int.1", align 8
  %590 = alloca %"class.sc_dt::sc_int.1", align 8
  %591 = alloca %"class.sc_dt::sc_int.5", align 8
  %592 = alloca %"class.sc_dt::sc_int.5", align 8
  %593 = alloca %"class.sc_dt::sc_int.8", align 8
  %594 = alloca i8, align 1
  %595 = alloca i8, align 1
  %596 = alloca %"class.sc_dt::sc_int.1", align 8
  %597 = alloca %"class.sc_dt::sc_int.1", align 8
  %598 = alloca %"class.sc_dt::sc_int.5", align 8
  %599 = alloca %"class.sc_dt::sc_int.5", align 8
  %600 = alloca %"class.sc_dt::sc_int.8", align 8
  %601 = alloca i8, align 1
  %602 = alloca i8, align 1
  %603 = alloca %"class.sc_dt::sc_int.1", align 8
  %604 = alloca %"class.sc_dt::sc_int.1", align 8
  %605 = alloca %"class.sc_dt::sc_int.5", align 8
  %606 = alloca %"class.sc_dt::sc_int.8", align 8
  %607 = alloca i8, align 1
  %608 = alloca i8, align 1
  %609 = alloca %"class.sc_dt::sc_int.1", align 8
  %610 = alloca %"class.sc_dt::sc_int.1", align 8
  %611 = alloca %"class.sc_dt::sc_int.5", align 8
  %612 = alloca %"class.sc_dt::sc_int.5", align 8
  %613 = alloca %"class.sc_dt::sc_int.5", align 8
  %614 = alloca %"class.sc_dt::sc_int.5", align 8
  %615 = alloca %"class.sc_dt::sc_int.5", align 8
  %616 = alloca %"class.sc_dt::sc_int.5", align 8
  %617 = alloca %"class.sc_dt::sc_int.5", align 8
  %618 = alloca %"class.sc_dt::sc_int.8", align 8
  %619 = alloca i8, align 1
  %620 = alloca i8, align 1
  %621 = alloca %"class.sc_dt::sc_int.1", align 8
  %622 = alloca %"class.sc_dt::sc_int.5", align 8
  %623 = alloca %"class.sc_dt::sc_int.8", align 8
  %624 = alloca i8, align 1
  %625 = alloca i8, align 1
  %626 = alloca %"class.sc_dt::sc_int.1", align 8
  %627 = alloca %"class.sc_dt::sc_int.5", align 8
  %628 = alloca %"class.sc_dt::sc_int.8", align 8
  %629 = alloca i8, align 1
  %630 = alloca i8, align 1
  %631 = alloca %"class.sc_dt::sc_int.1", align 8
  %632 = alloca %"class.sc_dt::sc_int.1", align 8
  %633 = alloca %"class.sc_dt::sc_int.5", align 8
  %634 = alloca %"class.sc_dt::sc_int.8", align 8
  %635 = alloca i8, align 1
  %636 = alloca i8, align 1
  %637 = alloca %"class.sc_dt::sc_int.1", align 8
  %638 = alloca i8, align 1
  %639 = alloca i8, align 1
  %640 = alloca i8, align 1
  %641 = alloca %"class.sc_dt::sc_int.1", align 8
  %642 = alloca %"class.sc_dt::sc_int.5", align 8
  %643 = alloca %"class.sc_dt::sc_int.1", align 8
  %644 = alloca %"class.sc_dt::sc_int.6", align 8
  %645 = alloca %"class.sc_dt::sc_int.5", align 8
  %646 = alloca %"class.sc_dt::sc_int.8", align 8
  %647 = alloca i8, align 1
  %648 = alloca i8, align 1
  %649 = alloca %"class.sc_dt::sc_int.1", align 8
  %650 = alloca %"class.sc_dt::sc_int.3", align 8
  %651 = alloca %"class.sc_dt::sc_int.1", align 8
  %652 = alloca %"class.sc_dt::sc_int.6", align 8
  %653 = alloca %"class.sc_dt::sc_int.8", align 8
  %654 = alloca i8, align 1
  %655 = alloca i8, align 1
  %656 = alloca %"class.sc_dt::sc_int.5", align 8
  %657 = alloca i8, align 1
  %658 = alloca i8, align 1
  %659 = alloca i8, align 1
  %660 = alloca %"class.sc_dt::sc_int.1", align 8
  %661 = alloca %"class.sc_dt::sc_int.1", align 8
  %662 = alloca %"class.sc_dt::sc_int.5", align 8
  %663 = alloca %"class.sc_dt::sc_int.5", align 8
  %664 = alloca %"class.sc_dt::sc_int.8", align 8
  %665 = alloca i8, align 1
  %666 = alloca i8, align 1
  %667 = alloca %"class.sc_dt::sc_int.1", align 8
  %668 = alloca %"class.sc_dt::sc_int.1", align 8
  %669 = alloca %"class.sc_dt::sc_int.5", align 8
  %670 = alloca %"class.sc_dt::sc_int.5", align 8
  %671 = alloca %"class.sc_dt::sc_int.8", align 8
  %672 = alloca i8, align 1
  %673 = alloca i8, align 1
  %674 = alloca %"class.sc_dt::sc_int.1", align 8
  %675 = alloca %"class.sc_dt::sc_int.1", align 8
  %676 = alloca %"class.sc_dt::sc_int.5", align 8
  %677 = alloca %"class.sc_dt::sc_int.8", align 8
  %678 = alloca i8, align 1
  %679 = alloca i8, align 1
  %680 = alloca %"class.sc_dt::sc_int.1", align 8
  %681 = alloca %"class.sc_dt::sc_int.1", align 8
  %682 = alloca %"class.sc_dt::sc_int.5", align 8
  %683 = alloca %"class.sc_dt::sc_int.5", align 8
  %684 = alloca %"class.sc_dt::sc_int.8", align 8
  %685 = alloca i8, align 1
  %686 = alloca i8, align 1
  %687 = alloca %"class.sc_dt::sc_int.1", align 8
  %688 = alloca %"class.sc_dt::sc_int.1", align 8
  %689 = alloca %"class.sc_dt::sc_int.5", align 8
  %690 = alloca %"class.sc_dt::sc_int.8", align 8
  %691 = alloca i8, align 1
  %692 = alloca i8, align 1
  %693 = alloca %"class.sc_dt::sc_int.1", align 8
  %694 = alloca %"class.sc_dt::sc_int.1", align 8
  %695 = alloca %"class.sc_dt::sc_int.5", align 8
  %696 = alloca %"class.sc_dt::sc_int.8", align 8
  %697 = alloca i8, align 1
  %698 = alloca i8, align 1
  %699 = alloca %"class.sc_dt::sc_int.1", align 8
  %700 = alloca %"class.sc_dt::sc_int.1", align 8
  %701 = alloca %"class.sc_dt::sc_int.5", align 8
  %702 = alloca %"class.sc_dt::sc_int.8", align 8
  %703 = alloca i8, align 1
  %704 = alloca i8, align 1
  %705 = alloca %"class.sc_dt::sc_int.1", align 8
  %706 = alloca %"class.sc_dt::sc_int.5", align 8
  %707 = alloca %"class.sc_dt::sc_int.1", align 8
  %708 = alloca %"class.sc_dt::sc_int.1", align 8
  %709 = alloca %"class.sc_dt::sc_int.5", align 8
  %710 = alloca %"class.sc_dt::sc_int.8", align 8
  %711 = alloca i8, align 1
  %712 = alloca i8, align 1
  %713 = alloca %"class.sc_dt::sc_int.1", align 8
  %714 = alloca %"class.sc_dt::sc_int.5", align 8
  %715 = alloca %"class.sc_dt::sc_int.5", align 8
  %716 = alloca %"class.sc_dt::sc_int.8", align 8
  %717 = alloca i8, align 1
  %718 = alloca i8, align 1
  %719 = alloca %"class.sc_dt::sc_int.1", align 8
  %720 = alloca %"class.sc_dt::sc_int.5", align 8
  %721 = alloca %"class.sc_dt::sc_int.8", align 8
  %722 = alloca i8, align 1
  %723 = alloca i8, align 1
  %724 = alloca %"class.sc_dt::sc_int.1", align 8
  %725 = alloca %"class.sc_dt::sc_int.5", align 8
  %726 = alloca %"class.sc_dt::sc_int.5", align 8
  %727 = alloca %"class.sc_dt::sc_int.5", align 8
  %728 = alloca %"class.sc_dt::sc_int.8", align 8
  %729 = alloca i8, align 1
  %730 = alloca i8, align 1
  %731 = alloca %"class.sc_dt::sc_int.1", align 8
  %732 = alloca %"class.sc_dt::sc_int.5", align 8
  %733 = alloca %"class.sc_dt::sc_int.8", align 8
  %734 = alloca i8, align 1
  %735 = alloca i8, align 1
  %736 = alloca %"class.sc_dt::sc_int.1", align 8
  %737 = alloca %"class.sc_dt::sc_int.1", align 8
  %738 = alloca %"class.sc_dt::sc_int.5", align 8
  %739 = alloca %"class.sc_dt::sc_int.8", align 8
  %740 = alloca i8, align 1
  %741 = alloca i8, align 1
  %742 = alloca %"class.sc_dt::sc_int.1", align 8
  %743 = alloca %"class.sc_dt::sc_int.5", align 8
  %744 = alloca %"class.sc_dt::sc_int.1", align 8
  %745 = alloca %"class.sc_dt::sc_int.5", align 8
  %746 = alloca %"class.sc_dt::sc_int.107", align 8
  %747 = alloca %"class.sc_dt::sc_int.107", align 8
  %748 = alloca %"class.sc_dt::sc_int.8", align 8
  %749 = alloca i8, align 1
  %750 = alloca i8, align 1
  %751 = alloca %"class.sc_dt::sc_int.1", align 8
  %752 = alloca %"class.sc_dt::sc_int.1", align 8
  %753 = alloca %"class.sc_dt::sc_int.8", align 8
  %754 = alloca i8, align 1
  %755 = alloca i8, align 1
  %756 = alloca %"class.sc_dt::sc_int.1", align 8
  %757 = alloca %"class.sc_dt::sc_int.5", align 8
  %758 = alloca %"class.sc_dt::sc_int.8", align 8
  %759 = alloca i8, align 1
  %760 = alloca i8, align 1
  %761 = alloca %"class.sc_dt::sc_int.107", align 8
  %762 = alloca %"class.sc_dt::sc_int.0", align 8
  %763 = alloca %"class.sc_dt::sc_int.1", align 8
  %764 = alloca i8, align 1
  %765 = alloca i8, align 1
  %766 = alloca i8, align 1
  store ptr %0, ptr %2, align 8, !tbaa !5
  %767 = load ptr, ptr %2, align 8
  call void @llvm.lifetime.start.p0(i64 24, ptr %3) #5
  call void @_ZN5sc_dt6sc_intILi16EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %3)
  call void @llvm.lifetime.start.p0(i64 24, ptr %4) #5
  invoke void @_ZN5sc_dt6sc_intILi16EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %4)
          to label %768 unwind label %906

768:                                              ; preds = %1
  call void @llvm.lifetime.start.p0(i64 24, ptr %7) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %7)
          to label %769 unwind label %910

769:                                              ; preds = %768
  call void @llvm.lifetime.start.p0(i64 24, ptr %8) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %770 unwind label %914

770:                                              ; preds = %769
  call void @llvm.lifetime.start.p0(i64 24, ptr %9) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %771 unwind label %918

771:                                              ; preds = %770
  call void @llvm.lifetime.start.p0(i64 24, ptr %10) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %10)
          to label %772 unwind label %922

772:                                              ; preds = %771
  call void @llvm.lifetime.start.p0(i64 24, ptr %11) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %11)
          to label %773 unwind label %926

773:                                              ; preds = %772
  call void @llvm.lifetime.start.p0(i64 24, ptr %12) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %12)
          to label %774 unwind label %930

774:                                              ; preds = %773
  call void @llvm.lifetime.start.p0(i64 24, ptr %13) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %13)
          to label %775 unwind label %934

775:                                              ; preds = %774
  call void @llvm.lifetime.start.p0(i64 1, ptr %14) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %15) #5
  invoke void @_ZN5sc_dt6sc_intILi5EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %15)
          to label %776 unwind label %938

776:                                              ; preds = %775
  call void @llvm.lifetime.start.p0(i64 24, ptr %16) #5
  invoke void @_ZN5sc_dt6sc_intILi5EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %16)
          to label %777 unwind label %942

777:                                              ; preds = %776
  call void @llvm.lifetime.start.p0(i64 24, ptr %17) #5
  invoke void @_ZN5sc_dt6sc_intILi6EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %17)
          to label %778 unwind label %946

778:                                              ; preds = %777
  call void @llvm.lifetime.start.p0(i64 24, ptr %18) #5
  invoke void @_ZN5sc_dt6sc_intILi12EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %18)
          to label %779 unwind label %950

779:                                              ; preds = %778
  call void @llvm.lifetime.start.p0(i64 24, ptr %19) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %19)
          to label %780 unwind label %954

780:                                              ; preds = %779
  call void @llvm.lifetime.start.p0(i64 24, ptr %20) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %20)
          to label %781 unwind label %958

781:                                              ; preds = %780
  call void @llvm.lifetime.start.p0(i64 24, ptr %21) #5
  invoke void @_ZN5sc_dt6sc_intILi2EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %21)
          to label %782 unwind label %962

782:                                              ; preds = %781
  call void @llvm.lifetime.start.p0(i64 24, ptr %22) #5
  invoke void @_ZN5sc_dt6sc_intILi4EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %22)
          to label %783 unwind label %966

783:                                              ; preds = %782
  call void @llvm.lifetime.start.p0(i64 24, ptr %23) #5
  invoke void @_ZN5sc_dt6sc_intILi6EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %23)
          to label %784 unwind label %970

784:                                              ; preds = %783
  call void @llvm.lifetime.start.p0(i64 24, ptr %24) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %24)
          to label %785 unwind label %974

785:                                              ; preds = %784
  call void @llvm.lifetime.start.p0(i64 24, ptr %25) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %25)
          to label %786 unwind label %978

786:                                              ; preds = %785
  call void @llvm.lifetime.start.p0(i64 24, ptr %26) #5
  invoke void @_ZN5sc_dt6sc_intILi12EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %787 unwind label %982

787:                                              ; preds = %786
  call void @llvm.lifetime.start.p0(i64 24, ptr %27) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %27)
          to label %788 unwind label %986

788:                                              ; preds = %787
  call void @llvm.lifetime.start.p0(i64 24, ptr %28) #5
  invoke void @_ZN5sc_dt6sc_intILi5EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %28)
          to label %789 unwind label %990

789:                                              ; preds = %788
  call void @llvm.lifetime.start.p0(i64 24, ptr %29) #5
  invoke void @_ZN5sc_dt6sc_intILi5EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %29)
          to label %790 unwind label %994

790:                                              ; preds = %789
  call void @llvm.lifetime.start.p0(i64 1, ptr %30) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %31) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %32) #5
  invoke void @_ZN5sc_dt6sc_intILi2EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %791 unwind label %998

791:                                              ; preds = %790
  call void @llvm.lifetime.start.p0(i64 24, ptr %33) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %33)
          to label %792 unwind label %1002

792:                                              ; preds = %791
  call void @llvm.lifetime.start.p0(i64 1, ptr %34) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %35) #5
  invoke void @_ZN5sc_dt6sc_intILi32EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %35)
          to label %793 unwind label %1006

793:                                              ; preds = %792
  call void @llvm.lifetime.start.p0(i64 24, ptr %36) #5
  invoke void @_ZN5sc_dt6sc_intILi32EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %36)
          to label %794 unwind label %1010

794:                                              ; preds = %793
  call void @llvm.lifetime.start.p0(i64 24, ptr %37) #5
  invoke void @_ZN5sc_dt6sc_intILi16EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %37)
          to label %795 unwind label %1014

795:                                              ; preds = %794
  call void @llvm.lifetime.start.p0(i64 24, ptr %38) #5
  invoke void @_ZN5sc_dt6sc_intILi16EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %38)
          to label %796 unwind label %1018

796:                                              ; preds = %795
  call void @llvm.lifetime.start.p0(i64 24, ptr %39) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %39)
          to label %797 unwind label %1022

797:                                              ; preds = %796
  br label %798

798:                                              ; preds = %797
  br label %799

799:                                              ; preds = %798
  br label %800

800:                                              ; preds = %799
  br label %801

801:                                              ; preds = %800
  %802 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 0)
          to label %803 unwind label %1026

803:                                              ; preds = %801
  %804 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %7, i32 noundef 0)
          to label %805 unwind label %1026

805:                                              ; preds = %803
  %806 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 0)
          to label %807 unwind label %1026

807:                                              ; preds = %805
  %808 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 0)
          to label %809 unwind label %1026

809:                                              ; preds = %807
  %810 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %10, i32 noundef 0)
          to label %811 unwind label %1026

811:                                              ; preds = %809
  %812 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 0)
          to label %813 unwind label %1026

813:                                              ; preds = %811
  %814 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %12, i32 noundef 0)
          to label %815 unwind label %1026

815:                                              ; preds = %813
  %816 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %13, i32 noundef 0)
          to label %817 unwind label %1026

817:                                              ; preds = %815
  store i8 0, ptr %14, align 1, !tbaa !9
  %818 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 0)
          to label %819 unwind label %1026

819:                                              ; preds = %817
  %820 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %16, i32 noundef 0)
          to label %821 unwind label %1026

821:                                              ; preds = %819
  %822 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %17, i32 noundef 0)
          to label %823 unwind label %1026

823:                                              ; preds = %821
  %824 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, i32 noundef 0)
          to label %825 unwind label %1026

825:                                              ; preds = %823
  %826 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %19, i32 noundef 0)
          to label %827 unwind label %1026

827:                                              ; preds = %825
  %828 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %20, i32 noundef 0)
          to label %829 unwind label %1026

829:                                              ; preds = %827
  %830 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %21, i32 noundef 0)
          to label %831 unwind label %1026

831:                                              ; preds = %829
  %832 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi4EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %22, i32 noundef 0)
          to label %833 unwind label %1026

833:                                              ; preds = %831
  %834 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %23, i32 noundef 0)
          to label %835 unwind label %1026

835:                                              ; preds = %833
  %836 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %24, i32 noundef 0)
          to label %837 unwind label %1026

837:                                              ; preds = %835
  %838 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %25, i32 noundef 0)
          to label %839 unwind label %1026

839:                                              ; preds = %837
  %840 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %26, i32 noundef 0)
          to label %841 unwind label %1026

841:                                              ; preds = %839
  %842 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %27, i32 noundef 0)
          to label %843 unwind label %1026

843:                                              ; preds = %841
  %844 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %28, i32 noundef 0)
          to label %845 unwind label %1026

845:                                              ; preds = %843
  %846 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %29, i32 noundef 0)
          to label %847 unwind label %1026

847:                                              ; preds = %845
  store i8 0, ptr %30, align 1, !tbaa !9
  store i8 0, ptr %31, align 1, !tbaa !9
  %848 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %32, i32 noundef -1)
          to label %849 unwind label %1026

849:                                              ; preds = %847
  %850 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 0)
          to label %851 unwind label %1026

851:                                              ; preds = %849
  store i8 0, ptr %34, align 1, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 1, ptr %40) #5
  store i8 1, ptr %40, align 1, !tbaa !9
  %852 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 17
  %853 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %852, ptr noundef nonnull align 1 dereferenceable(1) %40)
          to label %854 unwind label %1030

854:                                              ; preds = %851
  call void @llvm.lifetime.end.p0(i64 1, ptr %40) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %41) #5
  store i8 1, ptr %41, align 1, !tbaa !9
  %855 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 18
  %856 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %855, ptr noundef nonnull align 1 dereferenceable(1) %41)
          to label %857 unwind label %1034

857:                                              ; preds = %854
  call void @llvm.lifetime.end.p0(i64 1, ptr %41) #5
  %858 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %39, i32 noundef 0)
          to label %859 unwind label %1026

859:                                              ; preds = %857
  call void @llvm.lifetime.start.p0(i64 1, ptr %42) #5
  store i8 0, ptr %42, align 1, !tbaa !9
  %860 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %861 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %860, ptr noundef nonnull align 1 dereferenceable(1) %42)
          to label %862 unwind label %1038

862:                                              ; preds = %859
  call void @llvm.lifetime.end.p0(i64 1, ptr %42) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %43) #5
  store i8 0, ptr %43, align 1, !tbaa !9
  %863 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %864 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %863, ptr noundef nonnull align 1 dereferenceable(1) %43)
          to label %865 unwind label %1042

865:                                              ; preds = %862
  call void @llvm.lifetime.end.p0(i64 1, ptr %43) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %866 unwind label %1026

866:                                              ; preds = %865
  %867 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 2
  %868 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %867)
          to label %869 unwind label %1026

869:                                              ; preds = %866
  %870 = load i8, ptr %868, align 1, !tbaa !9, !range !11, !noundef !12
  %871 = trunc i8 %870 to i1
  %872 = zext i1 %871 to i32
  %873 = icmp eq i32 %872, 1
  br i1 %873, label %874, label %2045

874:                                              ; preds = %869
  %875 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 0)
          to label %876 unwind label %1026

876:                                              ; preds = %874
  %877 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 0)
          to label %878 unwind label %1026

878:                                              ; preds = %876
  %879 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %880 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %879, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %881 unwind label %1026

881:                                              ; preds = %878
  %882 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %883 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %882, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %884 unwind label %1026

884:                                              ; preds = %881
  call void @llvm.lifetime.start.p0(i64 1, ptr %44) #5
  store i8 0, ptr %44, align 1, !tbaa !9
  %885 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %886 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %885, ptr noundef nonnull align 1 dereferenceable(1) %44)
          to label %887 unwind label %1046

887:                                              ; preds = %884
  call void @llvm.lifetime.end.p0(i64 1, ptr %44) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %45) #5
  store i8 1, ptr %45, align 1, !tbaa !9
  %888 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %889 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %888, ptr noundef nonnull align 1 dereferenceable(1) %45)
          to label %890 unwind label %1050

890:                                              ; preds = %887
  call void @llvm.lifetime.end.p0(i64 1, ptr %45) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %891 unwind label %1026

891:                                              ; preds = %890
  br label %892

892:                                              ; preds = %1059, %891
  br label %893

893:                                              ; preds = %892
  call void @llvm.lifetime.start.p0(i64 1, ptr %46) #5
  store i8 0, ptr %46, align 1, !tbaa !9
  %894 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %895 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %894, ptr noundef nonnull align 1 dereferenceable(1) %46)
          to label %896 unwind label %1054

896:                                              ; preds = %893
  call void @llvm.lifetime.end.p0(i64 1, ptr %46) #5
  %897 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %898 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %897)
          to label %899 unwind label %1026

899:                                              ; preds = %896
  %900 = load i8, ptr %898, align 1, !tbaa !9, !range !11, !noundef !12
  %901 = trunc i8 %900 to i1
  %902 = zext i1 %901 to i32
  %903 = icmp eq i32 %902, 1
  br i1 %903, label %904, label %1058

904:                                              ; preds = %899
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %905 unwind label %1026

905:                                              ; preds = %904
  br label %1060

906:                                              ; preds = %1
  %907 = landingpad { ptr, i32 }
          cleanup
  %908 = extractvalue { ptr, i32 } %907, 0
  store ptr %908, ptr %5, align 8
  %909 = extractvalue { ptr, i32 } %907, 1
  store i32 %909, ptr %6, align 4
  br label %12045

910:                                              ; preds = %768
  %911 = landingpad { ptr, i32 }
          cleanup
  %912 = extractvalue { ptr, i32 } %911, 0
  store ptr %912, ptr %5, align 8
  %913 = extractvalue { ptr, i32 } %911, 1
  store i32 %913, ptr %6, align 4
  br label %12044

914:                                              ; preds = %769
  %915 = landingpad { ptr, i32 }
          cleanup
  %916 = extractvalue { ptr, i32 } %915, 0
  store ptr %916, ptr %5, align 8
  %917 = extractvalue { ptr, i32 } %915, 1
  store i32 %917, ptr %6, align 4
  br label %12043

918:                                              ; preds = %770
  %919 = landingpad { ptr, i32 }
          cleanup
  %920 = extractvalue { ptr, i32 } %919, 0
  store ptr %920, ptr %5, align 8
  %921 = extractvalue { ptr, i32 } %919, 1
  store i32 %921, ptr %6, align 4
  br label %12042

922:                                              ; preds = %771
  %923 = landingpad { ptr, i32 }
          cleanup
  %924 = extractvalue { ptr, i32 } %923, 0
  store ptr %924, ptr %5, align 8
  %925 = extractvalue { ptr, i32 } %923, 1
  store i32 %925, ptr %6, align 4
  br label %12041

926:                                              ; preds = %772
  %927 = landingpad { ptr, i32 }
          cleanup
  %928 = extractvalue { ptr, i32 } %927, 0
  store ptr %928, ptr %5, align 8
  %929 = extractvalue { ptr, i32 } %927, 1
  store i32 %929, ptr %6, align 4
  br label %12040

930:                                              ; preds = %773
  %931 = landingpad { ptr, i32 }
          cleanup
  %932 = extractvalue { ptr, i32 } %931, 0
  store ptr %932, ptr %5, align 8
  %933 = extractvalue { ptr, i32 } %931, 1
  store i32 %933, ptr %6, align 4
  br label %12039

934:                                              ; preds = %774
  %935 = landingpad { ptr, i32 }
          cleanup
  %936 = extractvalue { ptr, i32 } %935, 0
  store ptr %936, ptr %5, align 8
  %937 = extractvalue { ptr, i32 } %935, 1
  store i32 %937, ptr %6, align 4
  br label %12038

938:                                              ; preds = %775
  %939 = landingpad { ptr, i32 }
          cleanup
  %940 = extractvalue { ptr, i32 } %939, 0
  store ptr %940, ptr %5, align 8
  %941 = extractvalue { ptr, i32 } %939, 1
  store i32 %941, ptr %6, align 4
  br label %12037

942:                                              ; preds = %776
  %943 = landingpad { ptr, i32 }
          cleanup
  %944 = extractvalue { ptr, i32 } %943, 0
  store ptr %944, ptr %5, align 8
  %945 = extractvalue { ptr, i32 } %943, 1
  store i32 %945, ptr %6, align 4
  br label %12036

946:                                              ; preds = %777
  %947 = landingpad { ptr, i32 }
          cleanup
  %948 = extractvalue { ptr, i32 } %947, 0
  store ptr %948, ptr %5, align 8
  %949 = extractvalue { ptr, i32 } %947, 1
  store i32 %949, ptr %6, align 4
  br label %12035

950:                                              ; preds = %778
  %951 = landingpad { ptr, i32 }
          cleanup
  %952 = extractvalue { ptr, i32 } %951, 0
  store ptr %952, ptr %5, align 8
  %953 = extractvalue { ptr, i32 } %951, 1
  store i32 %953, ptr %6, align 4
  br label %12034

954:                                              ; preds = %779
  %955 = landingpad { ptr, i32 }
          cleanup
  %956 = extractvalue { ptr, i32 } %955, 0
  store ptr %956, ptr %5, align 8
  %957 = extractvalue { ptr, i32 } %955, 1
  store i32 %957, ptr %6, align 4
  br label %12033

958:                                              ; preds = %780
  %959 = landingpad { ptr, i32 }
          cleanup
  %960 = extractvalue { ptr, i32 } %959, 0
  store ptr %960, ptr %5, align 8
  %961 = extractvalue { ptr, i32 } %959, 1
  store i32 %961, ptr %6, align 4
  br label %12032

962:                                              ; preds = %781
  %963 = landingpad { ptr, i32 }
          cleanup
  %964 = extractvalue { ptr, i32 } %963, 0
  store ptr %964, ptr %5, align 8
  %965 = extractvalue { ptr, i32 } %963, 1
  store i32 %965, ptr %6, align 4
  br label %12031

966:                                              ; preds = %782
  %967 = landingpad { ptr, i32 }
          cleanup
  %968 = extractvalue { ptr, i32 } %967, 0
  store ptr %968, ptr %5, align 8
  %969 = extractvalue { ptr, i32 } %967, 1
  store i32 %969, ptr %6, align 4
  br label %12030

970:                                              ; preds = %783
  %971 = landingpad { ptr, i32 }
          cleanup
  %972 = extractvalue { ptr, i32 } %971, 0
  store ptr %972, ptr %5, align 8
  %973 = extractvalue { ptr, i32 } %971, 1
  store i32 %973, ptr %6, align 4
  br label %12029

974:                                              ; preds = %784
  %975 = landingpad { ptr, i32 }
          cleanup
  %976 = extractvalue { ptr, i32 } %975, 0
  store ptr %976, ptr %5, align 8
  %977 = extractvalue { ptr, i32 } %975, 1
  store i32 %977, ptr %6, align 4
  br label %12028

978:                                              ; preds = %785
  %979 = landingpad { ptr, i32 }
          cleanup
  %980 = extractvalue { ptr, i32 } %979, 0
  store ptr %980, ptr %5, align 8
  %981 = extractvalue { ptr, i32 } %979, 1
  store i32 %981, ptr %6, align 4
  br label %12027

982:                                              ; preds = %786
  %983 = landingpad { ptr, i32 }
          cleanup
  %984 = extractvalue { ptr, i32 } %983, 0
  store ptr %984, ptr %5, align 8
  %985 = extractvalue { ptr, i32 } %983, 1
  store i32 %985, ptr %6, align 4
  br label %12026

986:                                              ; preds = %787
  %987 = landingpad { ptr, i32 }
          cleanup
  %988 = extractvalue { ptr, i32 } %987, 0
  store ptr %988, ptr %5, align 8
  %989 = extractvalue { ptr, i32 } %987, 1
  store i32 %989, ptr %6, align 4
  br label %12025

990:                                              ; preds = %788
  %991 = landingpad { ptr, i32 }
          cleanup
  %992 = extractvalue { ptr, i32 } %991, 0
  store ptr %992, ptr %5, align 8
  %993 = extractvalue { ptr, i32 } %991, 1
  store i32 %993, ptr %6, align 4
  br label %12024

994:                                              ; preds = %789
  %995 = landingpad { ptr, i32 }
          cleanup
  %996 = extractvalue { ptr, i32 } %995, 0
  store ptr %996, ptr %5, align 8
  %997 = extractvalue { ptr, i32 } %995, 1
  store i32 %997, ptr %6, align 4
  br label %12023

998:                                              ; preds = %790
  %999 = landingpad { ptr, i32 }
          cleanup
  %1000 = extractvalue { ptr, i32 } %999, 0
  store ptr %1000, ptr %5, align 8
  %1001 = extractvalue { ptr, i32 } %999, 1
  store i32 %1001, ptr %6, align 4
  br label %12022

1002:                                             ; preds = %791
  %1003 = landingpad { ptr, i32 }
          cleanup
  %1004 = extractvalue { ptr, i32 } %1003, 0
  store ptr %1004, ptr %5, align 8
  %1005 = extractvalue { ptr, i32 } %1003, 1
  store i32 %1005, ptr %6, align 4
  br label %12021

1006:                                             ; preds = %792
  %1007 = landingpad { ptr, i32 }
          cleanup
  %1008 = extractvalue { ptr, i32 } %1007, 0
  store ptr %1008, ptr %5, align 8
  %1009 = extractvalue { ptr, i32 } %1007, 1
  store i32 %1009, ptr %6, align 4
  br label %12020

1010:                                             ; preds = %793
  %1011 = landingpad { ptr, i32 }
          cleanup
  %1012 = extractvalue { ptr, i32 } %1011, 0
  store ptr %1012, ptr %5, align 8
  %1013 = extractvalue { ptr, i32 } %1011, 1
  store i32 %1013, ptr %6, align 4
  br label %12019

1014:                                             ; preds = %794
  %1015 = landingpad { ptr, i32 }
          cleanup
  %1016 = extractvalue { ptr, i32 } %1015, 0
  store ptr %1016, ptr %5, align 8
  %1017 = extractvalue { ptr, i32 } %1015, 1
  store i32 %1017, ptr %6, align 4
  br label %12018

1018:                                             ; preds = %795
  %1019 = landingpad { ptr, i32 }
          cleanup
  %1020 = extractvalue { ptr, i32 } %1019, 0
  store ptr %1020, ptr %5, align 8
  %1021 = extractvalue { ptr, i32 } %1019, 1
  store i32 %1021, ptr %6, align 4
  br label %12017

1022:                                             ; preds = %796
  %1023 = landingpad { ptr, i32 }
          cleanup
  %1024 = extractvalue { ptr, i32 } %1023, 0
  store ptr %1024, ptr %5, align 8
  %1025 = extractvalue { ptr, i32 } %1023, 1
  store i32 %1025, ptr %6, align 4
  br label %12016

1026:                                             ; preds = %12012, %12009, %11967, %11961, %11955, %11946, %11927, %11925, %11923, %11922, %11920, %11916, %11911, %11909, %11902, %11898, %11865, %11858, %11856, %11850, %11836, %11835, %11831, %11794, %11787, %11785, %11775, %11766, %11762, %11696, %11689, %11687, %11658, %11654, %11608, %11601, %11599, %11593, %11570, %11566, %11529, %11522, %11520, %11514, %11503, %11492, %11488, %11473, %11466, %11464, %11458, %11438, %11404, %11398, %11395, %11387, %11383, %11350, %11343, %11341, %11335, %11328, %11320, %11316, %11274, %11267, %11265, %11259, %11248, %11240, %11236, %11212, %11205, %11203, %11197, %11173, %11171, %11169, %11167, %11165, %11163, %11133, %11131, %11129, %11127, %11125, %11123, %11119, %11117, %11106, %11104, %11102, %11100, %11096, %11092, %11085, %11081, %11034, %11027, %11025, %11019, %11001, %10997, %10951, %10944, %10942, %10936, %10913, %10909, %10863, %10856, %10854, %10848, %10825, %10821, %10770, %10763, %10761, %10755, %10733, %10729, %10687, %10680, %10678, %10672, %10656, %10652, %10601, %10594, %10592, %10586, %10566, %10562, %10515, %10508, %10506, %10500, %10479, %10452, %10446, %10440, %10431, %10428, %10426, %10420, %10416, %10369, %10362, %10360, %10350, %10335, %10331, %10279, %10272, %10270, %10243, %10241, %10239, %10212, %10206, %10201, %10198, %10195, %10186, %10180, %10179, %10175, %10133, %10126, %10124, %10118, %10102, %10098, %10061, %10054, %10052, %10046, %10035, %10030, %10026, %9989, %9982, %9980, %9974, %9963, %9958, %9954, %9939, %9932, %9930, %9924, %9886, %9815, %9799, %9787, %9783, %9741, %9734, %9732, %9726, %9710, %9706, %9655, %9648, %9646, %9640, %9620, %9616, %9569, %9562, %9560, %9554, %9533, %9506, %9500, %9494, %9485, %9482, %9480, %9474, %9470, %9423, %9416, %9414, %9404, %9389, %9385, %9333, %9326, %9324, %9297, %9294, %9291, %9285, %9280, %9279, %9277, %9275, %9271, %9267, %9263, %9261, %9254, %9240, %9234, %9228, %9219, %9216, %9214, %9212, %9210, %9208, %9206, %9192, %9186, %9181, %9178, %9175, %9166, %9163, %9161, %9159, %9157, %9155, %9153, %9139, %9133, %9128, %9125, %9122, %9113, %9110, %9108, %9106, %9103, %9101, %9082, %9080, %9078, %9036, %9030, %9024, %9015, %9001, %8978, %8972, %8967, %8964, %8961, %8952, %8949, %8933, %8924, %8922, %8919, %8917, %8914, %8912, %8910, %8896, %8890, %8884, %8875, %8872, %8870, %8868, %8866, %8852, %8846, %8841, %8838, %8835, %8826, %8823, %8821, %8810, %8806, %8796, %8794, %8792, %8769, %8763, %8758, %8755, %8752, %8743, %8740, %8726, %8722, %8675, %8668, %8666, %8660, %8639, %8637, %8633, %8626, %8622, %8598, %8591, %8589, %8583, %8572, %8569, %8566, %8554, %8550, %8548, %8541, %8539, %8535, %8528, %8524, %8509, %8502, %8500, %8494, %8458, %8456, %8408, %8399, %8397, %8393, %8387, %8383, %8377, %8370, %8366, %8351, %8344, %8342, %8336, %8277, %8275, %8262, %8260, %8256, %8249, %8245, %8230, %8223, %8221, %8215, %8156, %8154, %8141, %8139, %8135, %8128, %8124, %8086, %8079, %8077, %8071, %8060, %8051, %8037, %8031, %8025, %8016, %8013, %8010, %8008, %7996, %7994, %7990, %7988, %7979, %7956, %7950, %7945, %7942, %7939, %7930, %7927, %7920, %7918, %7914, %7910, %7908, %7907, %7904, %7901, %7897, %7895, %7892, %7890, %7867, %7861, %7856, %7853, %7850, %7841, %7838, %7831, %7829, %7827, %7804, %7798, %7793, %7790, %7787, %7778, %7775, %7768, %7767, %7765, %7763, %7759, %7755, %7751, %7745, %7741, %7708, %7701, %7699, %7693, %7679, %7678, %7674, %7627, %7620, %7618, %7608, %7593, %7589, %7537, %7530, %7528, %7496, %7489, %7487, %7484, %7481, %7458, %7452, %7446, %7437, %7434, %7432, %7425, %7419, %7396, %7390, %7384, %7375, %7372, %7362, %7360, %7358, %7356, %7342, %7336, %7331, %7328, %7325, %7316, %7313, %7310, %7308, %7306, %7305, %7303, %7300, %7298, %7286, %7284, %7277, %7274, %7272, %7270, %7268, %7265, %7233, %7227, %7221, %7212, %7209, %7192, %7190, %7188, %7186, %7184, %7182, %7180, %7175, %7152, %7146, %7141, %7138, %7135, %7126, %7120, %7114, %7110, %7106, %7091, %7084, %7082, %7076, %7069, %7066, %7063, %7059, %7057, %7055, %7053, %7049, %7047, %7045, %7043, %7041, %7038, %7036, %7034, %7032, %7028, %7023, %7021, %7019, %7017, %7015, %7013, %6981, %6975, %6970, %6967, %6964, %6955, %6952, %6940, %6938, %6936, %6913, %6907, %6902, %6899, %6896, %6887, %6884, %6877, %6874, %6856, %6850, %6844, %6835, %6832, %6830, %6828, %6827, %6823, %6785, %6778, %6776, %6770, %6752, %6749, %6746, %6743, %6741, %6739, %6733, %6729, %6682, %6675, %6673, %6667, %6646, %6640, %6636, %6598, %6591, %6589, %6583, %6537, %6535, %6533, %6527, %6523, %6494, %6487, %6485, %6479, %6437, %6435, %6419, %6403, %6397, %6391, %6387, %6349, %6342, %6340, %6334, %6288, %6286, %6284, %6278, %6274, %6236, %6229, %6227, %6221, %6175, %6173, %6171, %6165, %6161, %6123, %6116, %6114, %6108, %6062, %6060, %6058, %6055, %6023, %6017, %6011, %6002, %5999, %5978, %5955, %5949, %5943, %5934, %5931, %5929, %5921, %5898, %5892, %5886, %5877, %5874, %5872, %5864, %5841, %5835, %5829, %5820, %5817, %5812, %5809, %5800, %5798, %5797, %5794, %5791, %5787, %5785, %5782, %5780, %5757, %5751, %5746, %5743, %5740, %5731, %5728, %5720, %5718, %5715, %5713, %5709, %5707, %5705, %5703, %5701, %5699, %5697, %5695, %5693, %5688, %5686, %5685, %5683, %5681, %5677, %5673, %5666, %5662, %5629, %5622, %5620, %5614, %5600, %5599, %5595, %5543, %5536, %5534, %5528, %5504, %5472, %5466, %5460, %5451, %5448, %5436, %5413, %5407, %5401, %5392, %5389, %5387, %5385, %5383, %5375, %5373, %5370, %5368, %5364, %5362, %5360, %5356, %5354, %5352, %5329, %5323, %5317, %5308, %5305, %5303, %5296, %5294, %5292, %5269, %5263, %5258, %5255, %5252, %5243, %5240, %5233, %5210, %5204, %5198, %5189, %5186, %5184, %5176, %5174, %5172, %5170, %5168, %5145, %5139, %5134, %5131, %5128, %5119, %5116, %5106, %5105, %5103, %5101, %5097, %5093, %5090, %5088, %5082, %5078, %5049, %5042, %5040, %5034, %5020, %5018, %4995, %4989, %4983, %4974, %4971, %4969, %4962, %4948, %4942, %4937, %4934, %4931, %4922, %4919, %4917, %4915, %4901, %4895, %4889, %4880, %4877, %4874, %4862, %4859, %4857, %4850, %4827, %4821, %4816, %4813, %4810, %4801, %4798, %4791, %4764, %4758, %4752, %4743, %4740, %4738, %4736, %4734, %4732, %4726, %4722, %4685, %4678, %4676, %4666, %4657, %4653, %4591, %4584, %4582, %4552, %4538, %4532, %4527, %4524, %4521, %4512, %4509, %4507, %4504, %4490, %4484, %4478, %4469, %4466, %4464, %4462, %4460, %4437, %4431, %4426, %4423, %4420, %4411, %4408, %4400, %4386, %4380, %4374, %4365, %4362, %4359, %4357, %4355, %4332, %4326, %4321, %4318, %4315, %4306, %4303, %4295, %4281, %4275, %4269, %4260, %4257, %4254, %4252, %4250, %4227, %4221, %4216, %4213, %4210, %4201, %4198, %4189, %4186, %4184, %4181, %4158, %4152, %4147, %4144, %4141, %4132, %4129, %4103, %4101, %4092, %4064, %4062, %4053, %4042, %4040, %4038, %4036, %4034, %4011, %4005, %4000, %3997, %3994, %3985, %3982, %3972, %3971, %3969, %3967, %3963, %3959, %3952, %3948, %3919, %3912, %3910, %3904, %3890, %3888, %3865, %3859, %3853, %3844, %3841, %3839, %3832, %3805, %3799, %3793, %3784, %3781, %3779, %3773, %3769, %3732, %3725, %3723, %3713, %3704, %3700, %3638, %3631, %3629, %3598, %3596, %3593, %3591, %3587, %3582, %3580, %3579, %3577, %3575, %3571, %3567, %3564, %3562, %3560, %3558, %3554, %3550, %3547, %3545, %3543, %3541, %3537, %3533, %3527, %3513, %3507, %3501, %3492, %3489, %3487, %3484, %3482, %3480, %3466, %3460, %3454, %3445, %3442, %3440, %3438, %3436, %3413, %3407, %3402, %3399, %3396, %3387, %3384, %3376, %3374, %3372, %3370, %3368, %3345, %3339, %3334, %3331, %3328, %3319, %3316, %3309, %3308, %3306, %3304, %3300, %3296, %3289, %3285, %3238, %3231, %3229, %3223, %3205, %3201, %3128, %3121, %3119, %3070, %3043, %3037, %3032, %3029, %3026, %3017, %3011, %3010, %3006, %2964, %2957, %2955, %2949, %2933, %2929, %2856, %2849, %2847, %2797, %2795, %2794, %2792, %2790, %2786, %2782, %2778, %2776, %2774, %2773, %2770, %2767, %2763, %2761, %2758, %2756, %2725, %2719, %2714, %2711, %2708, %2699, %2696, %2670, %2668, %2666, %2664, %2662, %2657, %2655, %2620, %2618, %2614, %2612, %2610, %2593, %2570, %2564, %2559, %2556, %2553, %2544, %2541, %2534, %2531, %2528, %2526, %2522, %2520, %2518, %2516, %2514, %2488, %2482, %2477, %2474, %2471, %2462, %2459, %2457, %2450, %2446, %2444, %2442, %2440, %2439, %2437, %2435, %2432, %2428, %2404, %2397, %2395, %2389, %2380, %2378, %2376, %2373, %2369, %2367, %2353, %2347, %2341, %2332, %2329, %2327, %2325, %2281, %2278, %2272, %2270, %2267, %2265, %2263, %2261, %2255, %2253, %2250, %2248, %2246, %2208, %2200, %2194, %2185, %2182, %2161, %2159, %2156, %2154, %2150, %2148, %2145, %2143, %2141, %2127, %2119, %2113, %2104, %2101, %2098, %2096, %2094, %2080, %2072, %2066, %2057, %2054, %2049, %2047, %2045, %2039, %2035, %2007, %2000, %1998, %1986, %1982, %1945, %1938, %1936, %1920, %1916, %1888, %1881, %1879, %1867, %1863, %1821, %1814, %1812, %1791, %1773, %1765, %1759, %1750, %1747, %1745, %1744, %1740, %1716, %1709, %1707, %1694, %1676, %1668, %1662, %1653, %1650, %1648, %1647, %1643, %1610, %1603, %1601, %1570, %1568, %1548, %1546, %1537, %1536, %1532, %1490, %1483, %1481, %1460, %1424, %1416, %1410, %1395, %1391, %1367, %1360, %1358, %1345, %1309, %1301, %1295, %1280, %1276, %1234, %1227, %1225, %1204, %1190, %1182, %1176, %1167, %1164, %1162, %1160, %1146, %1138, %1132, %1123, %1120, %1118, %1115, %1112, %1104, %1102, %1088, %1080, %1074, %1065, %1062, %1060, %1058, %904, %896, %890, %881, %878, %876, %874, %866, %865, %857, %849, %847, %845, %843, %841, %839, %837, %835, %833, %831, %829, %827, %825, %823, %821, %819, %817, %815, %813, %811, %809, %807, %805, %803, %801
  %1027 = landingpad { ptr, i32 }
          cleanup
  %1028 = extractvalue { ptr, i32 } %1027, 0
  store ptr %1028, ptr %5, align 8
  %1029 = extractvalue { ptr, i32 } %1027, 1
  store i32 %1029, ptr %6, align 4
  br label %12015

1030:                                             ; preds = %851
  %1031 = landingpad { ptr, i32 }
          cleanup
  %1032 = extractvalue { ptr, i32 } %1031, 0
  store ptr %1032, ptr %5, align 8
  %1033 = extractvalue { ptr, i32 } %1031, 1
  store i32 %1033, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %40) #5
  br label %12015

1034:                                             ; preds = %854
  %1035 = landingpad { ptr, i32 }
          cleanup
  %1036 = extractvalue { ptr, i32 } %1035, 0
  store ptr %1036, ptr %5, align 8
  %1037 = extractvalue { ptr, i32 } %1035, 1
  store i32 %1037, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %41) #5
  br label %12015

1038:                                             ; preds = %859
  %1039 = landingpad { ptr, i32 }
          cleanup
  %1040 = extractvalue { ptr, i32 } %1039, 0
  store ptr %1040, ptr %5, align 8
  %1041 = extractvalue { ptr, i32 } %1039, 1
  store i32 %1041, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %42) #5
  br label %12015

1042:                                             ; preds = %862
  %1043 = landingpad { ptr, i32 }
          cleanup
  %1044 = extractvalue { ptr, i32 } %1043, 0
  store ptr %1044, ptr %5, align 8
  %1045 = extractvalue { ptr, i32 } %1043, 1
  store i32 %1045, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %43) #5
  br label %12015

1046:                                             ; preds = %884
  %1047 = landingpad { ptr, i32 }
          cleanup
  %1048 = extractvalue { ptr, i32 } %1047, 0
  store ptr %1048, ptr %5, align 8
  %1049 = extractvalue { ptr, i32 } %1047, 1
  store i32 %1049, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %44) #5
  br label %12015

1050:                                             ; preds = %887
  %1051 = landingpad { ptr, i32 }
          cleanup
  %1052 = extractvalue { ptr, i32 } %1051, 0
  store ptr %1052, ptr %5, align 8
  %1053 = extractvalue { ptr, i32 } %1051, 1
  store i32 %1053, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %45) #5
  br label %12015

1054:                                             ; preds = %893
  %1055 = landingpad { ptr, i32 }
          cleanup
  %1056 = extractvalue { ptr, i32 } %1055, 0
  store ptr %1056, ptr %5, align 8
  %1057 = extractvalue { ptr, i32 } %1055, 1
  store i32 %1057, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %46) #5
  br label %12015

1058:                                             ; preds = %899
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1059 unwind label %1026

1059:                                             ; preds = %1058
  br label %892, !llvm.loop !13

1060:                                             ; preds = %905
  %1061 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 1)
          to label %1062 unwind label %1026

1062:                                             ; preds = %1060
  %1063 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %1064 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1063, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %1065 unwind label %1026

1065:                                             ; preds = %1062
  %1066 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %1067 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1066, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %1068 unwind label %1026

1068:                                             ; preds = %1065
  call void @llvm.lifetime.start.p0(i64 1, ptr %47) #5
  store i8 0, ptr %47, align 1, !tbaa !9
  %1069 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %1070 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1069, ptr noundef nonnull align 1 dereferenceable(1) %47)
          to label %1071 unwind label %1090

1071:                                             ; preds = %1068
  call void @llvm.lifetime.end.p0(i64 1, ptr %47) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %48) #5
  store i8 1, ptr %48, align 1, !tbaa !9
  %1072 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %1073 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1072, ptr noundef nonnull align 1 dereferenceable(1) %48)
          to label %1074 unwind label %1094

1074:                                             ; preds = %1071
  call void @llvm.lifetime.end.p0(i64 1, ptr %48) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1075 unwind label %1026

1075:                                             ; preds = %1074
  br label %1076

1076:                                             ; preds = %1103, %1075
  br label %1077

1077:                                             ; preds = %1076
  call void @llvm.lifetime.start.p0(i64 1, ptr %49) #5
  store i8 0, ptr %49, align 1, !tbaa !9
  %1078 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %1079 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1078, ptr noundef nonnull align 1 dereferenceable(1) %49)
          to label %1080 unwind label %1098

1080:                                             ; preds = %1077
  call void @llvm.lifetime.end.p0(i64 1, ptr %49) #5
  %1081 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %1082 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1081)
          to label %1083 unwind label %1026

1083:                                             ; preds = %1080
  %1084 = load i8, ptr %1082, align 1, !tbaa !9, !range !11, !noundef !12
  %1085 = trunc i8 %1084 to i1
  %1086 = zext i1 %1085 to i32
  %1087 = icmp eq i32 %1086, 1
  br i1 %1087, label %1088, label %1102

1088:                                             ; preds = %1083
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1089 unwind label %1026

1089:                                             ; preds = %1088
  br label %1104

1090:                                             ; preds = %1068
  %1091 = landingpad { ptr, i32 }
          cleanup
  %1092 = extractvalue { ptr, i32 } %1091, 0
  store ptr %1092, ptr %5, align 8
  %1093 = extractvalue { ptr, i32 } %1091, 1
  store i32 %1093, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %47) #5
  br label %12015

1094:                                             ; preds = %1071
  %1095 = landingpad { ptr, i32 }
          cleanup
  %1096 = extractvalue { ptr, i32 } %1095, 0
  store ptr %1096, ptr %5, align 8
  %1097 = extractvalue { ptr, i32 } %1095, 1
  store i32 %1097, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %48) #5
  br label %12015

1098:                                             ; preds = %1077
  %1099 = landingpad { ptr, i32 }
          cleanup
  %1100 = extractvalue { ptr, i32 } %1099, 0
  store ptr %1100, ptr %5, align 8
  %1101 = extractvalue { ptr, i32 } %1099, 1
  store i32 %1101, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %49) #5
  br label %12015

1102:                                             ; preds = %1083
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1103 unwind label %1026

1103:                                             ; preds = %1102
  br label %1076, !llvm.loop !15

1104:                                             ; preds = %1089
  %1105 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 7
  %1106 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1105)
          to label %1107 unwind label %1026

1107:                                             ; preds = %1104
  %1108 = load i8, ptr %1106, align 1, !tbaa !9, !range !11, !noundef !12
  %1109 = trunc i8 %1108 to i1
  %1110 = zext i1 %1109 to i32
  %1111 = icmp eq i32 %1110, 1
  br i1 %1111, label %1112, label %1115

1112:                                             ; preds = %1107
  %1113 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 0)
          to label %1114 unwind label %1026

1114:                                             ; preds = %1112
  br label %1118

1115:                                             ; preds = %1107
  %1116 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 16)
          to label %1117 unwind label %1026

1117:                                             ; preds = %1115
  br label %1118

1118:                                             ; preds = %1117, %1114
  %1119 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 2)
          to label %1120 unwind label %1026

1120:                                             ; preds = %1118
  %1121 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %1122 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1121, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %1123 unwind label %1026

1123:                                             ; preds = %1120
  %1124 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %1125 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1124, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %1126 unwind label %1026

1126:                                             ; preds = %1123
  call void @llvm.lifetime.start.p0(i64 1, ptr %50) #5
  store i8 0, ptr %50, align 1, !tbaa !9
  %1127 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %1128 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1127, ptr noundef nonnull align 1 dereferenceable(1) %50)
          to label %1129 unwind label %1148

1129:                                             ; preds = %1126
  call void @llvm.lifetime.end.p0(i64 1, ptr %50) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %51) #5
  store i8 1, ptr %51, align 1, !tbaa !9
  %1130 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %1131 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1130, ptr noundef nonnull align 1 dereferenceable(1) %51)
          to label %1132 unwind label %1152

1132:                                             ; preds = %1129
  call void @llvm.lifetime.end.p0(i64 1, ptr %51) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1133 unwind label %1026

1133:                                             ; preds = %1132
  br label %1134

1134:                                             ; preds = %1161, %1133
  br label %1135

1135:                                             ; preds = %1134
  call void @llvm.lifetime.start.p0(i64 1, ptr %52) #5
  store i8 0, ptr %52, align 1, !tbaa !9
  %1136 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %1137 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1136, ptr noundef nonnull align 1 dereferenceable(1) %52)
          to label %1138 unwind label %1156

1138:                                             ; preds = %1135
  call void @llvm.lifetime.end.p0(i64 1, ptr %52) #5
  %1139 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %1140 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1139)
          to label %1141 unwind label %1026

1141:                                             ; preds = %1138
  %1142 = load i8, ptr %1140, align 1, !tbaa !9, !range !11, !noundef !12
  %1143 = trunc i8 %1142 to i1
  %1144 = zext i1 %1143 to i32
  %1145 = icmp eq i32 %1144, 1
  br i1 %1145, label %1146, label %1160

1146:                                             ; preds = %1141
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1147 unwind label %1026

1147:                                             ; preds = %1146
  br label %1162

1148:                                             ; preds = %1126
  %1149 = landingpad { ptr, i32 }
          cleanup
  %1150 = extractvalue { ptr, i32 } %1149, 0
  store ptr %1150, ptr %5, align 8
  %1151 = extractvalue { ptr, i32 } %1149, 1
  store i32 %1151, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %50) #5
  br label %12015

1152:                                             ; preds = %1129
  %1153 = landingpad { ptr, i32 }
          cleanup
  %1154 = extractvalue { ptr, i32 } %1153, 0
  store ptr %1154, ptr %5, align 8
  %1155 = extractvalue { ptr, i32 } %1153, 1
  store i32 %1155, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %51) #5
  br label %12015

1156:                                             ; preds = %1135
  %1157 = landingpad { ptr, i32 }
          cleanup
  %1158 = extractvalue { ptr, i32 } %1157, 0
  store ptr %1158, ptr %5, align 8
  %1159 = extractvalue { ptr, i32 } %1157, 1
  store i32 %1159, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %52) #5
  br label %12015

1160:                                             ; preds = %1141
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1161 unwind label %1026

1161:                                             ; preds = %1160
  br label %1134, !llvm.loop !16

1162:                                             ; preds = %1147
  %1163 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 4)
          to label %1164 unwind label %1026

1164:                                             ; preds = %1162
  %1165 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %1166 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1165, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %1167 unwind label %1026

1167:                                             ; preds = %1164
  %1168 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %1169 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1168, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %1170 unwind label %1026

1170:                                             ; preds = %1167
  call void @llvm.lifetime.start.p0(i64 1, ptr %53) #5
  store i8 0, ptr %53, align 1, !tbaa !9
  %1171 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %1172 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1171, ptr noundef nonnull align 1 dereferenceable(1) %53)
          to label %1173 unwind label %1192

1173:                                             ; preds = %1170
  call void @llvm.lifetime.end.p0(i64 1, ptr %53) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %54) #5
  store i8 1, ptr %54, align 1, !tbaa !9
  %1174 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %1175 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1174, ptr noundef nonnull align 1 dereferenceable(1) %54)
          to label %1176 unwind label %1196

1176:                                             ; preds = %1173
  call void @llvm.lifetime.end.p0(i64 1, ptr %54) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1177 unwind label %1026

1177:                                             ; preds = %1176
  br label %1178

1178:                                             ; preds = %1205, %1177
  br label %1179

1179:                                             ; preds = %1178
  call void @llvm.lifetime.start.p0(i64 1, ptr %55) #5
  store i8 0, ptr %55, align 1, !tbaa !9
  %1180 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %1181 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1180, ptr noundef nonnull align 1 dereferenceable(1) %55)
          to label %1182 unwind label %1200

1182:                                             ; preds = %1179
  call void @llvm.lifetime.end.p0(i64 1, ptr %55) #5
  %1183 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %1184 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1183)
          to label %1185 unwind label %1026

1185:                                             ; preds = %1182
  %1186 = load i8, ptr %1184, align 1, !tbaa !9, !range !11, !noundef !12
  %1187 = trunc i8 %1186 to i1
  %1188 = zext i1 %1187 to i32
  %1189 = icmp eq i32 %1188, 1
  br i1 %1189, label %1190, label %1204

1190:                                             ; preds = %1185
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1191 unwind label %1026

1191:                                             ; preds = %1190
  br label %1206

1192:                                             ; preds = %1170
  %1193 = landingpad { ptr, i32 }
          cleanup
  %1194 = extractvalue { ptr, i32 } %1193, 0
  store ptr %1194, ptr %5, align 8
  %1195 = extractvalue { ptr, i32 } %1193, 1
  store i32 %1195, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %53) #5
  br label %12015

1196:                                             ; preds = %1173
  %1197 = landingpad { ptr, i32 }
          cleanup
  %1198 = extractvalue { ptr, i32 } %1197, 0
  store ptr %1198, ptr %5, align 8
  %1199 = extractvalue { ptr, i32 } %1197, 1
  store i32 %1199, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %54) #5
  br label %12015

1200:                                             ; preds = %1179
  %1201 = landingpad { ptr, i32 }
          cleanup
  %1202 = extractvalue { ptr, i32 } %1201, 0
  store ptr %1202, ptr %5, align 8
  %1203 = extractvalue { ptr, i32 } %1201, 1
  store i32 %1203, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %55) #5
  br label %12015

1204:                                             ; preds = %1185
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1205 unwind label %1026

1205:                                             ; preds = %1204
  br label %1178, !llvm.loop !17

1206:                                             ; preds = %1191
  call void @llvm.lifetime.start.p0(i64 24, ptr %56) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %56, i32 noundef 8)
          to label %1207 unwind label %1236

1207:                                             ; preds = %1206
  %1208 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %1209 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1208, ptr noundef nonnull align 8 dereferenceable(24) %56)
          to label %1210 unwind label %1240

1210:                                             ; preds = %1207
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %56) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %56) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %57) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %57, i32 noundef 0)
          to label %1211 unwind label %1245

1211:                                             ; preds = %1210
  %1212 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %1213 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1212, ptr noundef nonnull align 8 dereferenceable(24) %57)
          to label %1214 unwind label %1249

1214:                                             ; preds = %1211
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %57) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %57) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %58) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %58, i32 noundef 2)
          to label %1215 unwind label %1254

1215:                                             ; preds = %1214
  %1216 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %1217 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1216, ptr noundef nonnull align 8 dereferenceable(24) %58)
          to label %1218 unwind label %1258

1218:                                             ; preds = %1215
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %58) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %58) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %59) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %59, i32 noundef 2)
          to label %1219 unwind label %1263

1219:                                             ; preds = %1218
  %1220 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %1221 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1220, ptr noundef nonnull align 8 dereferenceable(24) %59)
          to label %1222 unwind label %1267

1222:                                             ; preds = %1219
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %59) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %59) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %60) #5
  store i8 1, ptr %60, align 1, !tbaa !9
  %1223 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %1224 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1223, ptr noundef nonnull align 1 dereferenceable(1) %60)
          to label %1225 unwind label %1272

1225:                                             ; preds = %1222
  call void @llvm.lifetime.end.p0(i64 1, ptr %60) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1226 unwind label %1026

1226:                                             ; preds = %1225
  br label %1227

1227:                                             ; preds = %1235, %1226
  %1228 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %1229 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1228)
          to label %1230 unwind label %1026

1230:                                             ; preds = %1227
  %1231 = load i8, ptr %1229, align 1, !tbaa !9, !range !11, !noundef !12
  %1232 = trunc i8 %1231 to i1
  %1233 = xor i1 %1232, true
  br i1 %1233, label %1234, label %1276

1234:                                             ; preds = %1230
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1235 unwind label %1026

1235:                                             ; preds = %1234
  br label %1227, !llvm.loop !18

1236:                                             ; preds = %1206
  %1237 = landingpad { ptr, i32 }
          cleanup
  %1238 = extractvalue { ptr, i32 } %1237, 0
  store ptr %1238, ptr %5, align 8
  %1239 = extractvalue { ptr, i32 } %1237, 1
  store i32 %1239, ptr %6, align 4
  br label %1244

1240:                                             ; preds = %1207
  %1241 = landingpad { ptr, i32 }
          cleanup
  %1242 = extractvalue { ptr, i32 } %1241, 0
  store ptr %1242, ptr %5, align 8
  %1243 = extractvalue { ptr, i32 } %1241, 1
  store i32 %1243, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %56) #5
  br label %1244

1244:                                             ; preds = %1240, %1236
  call void @llvm.lifetime.end.p0(i64 24, ptr %56) #5
  br label %12015

1245:                                             ; preds = %1210
  %1246 = landingpad { ptr, i32 }
          cleanup
  %1247 = extractvalue { ptr, i32 } %1246, 0
  store ptr %1247, ptr %5, align 8
  %1248 = extractvalue { ptr, i32 } %1246, 1
  store i32 %1248, ptr %6, align 4
  br label %1253

1249:                                             ; preds = %1211
  %1250 = landingpad { ptr, i32 }
          cleanup
  %1251 = extractvalue { ptr, i32 } %1250, 0
  store ptr %1251, ptr %5, align 8
  %1252 = extractvalue { ptr, i32 } %1250, 1
  store i32 %1252, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %57) #5
  br label %1253

1253:                                             ; preds = %1249, %1245
  call void @llvm.lifetime.end.p0(i64 24, ptr %57) #5
  br label %12015

1254:                                             ; preds = %1214
  %1255 = landingpad { ptr, i32 }
          cleanup
  %1256 = extractvalue { ptr, i32 } %1255, 0
  store ptr %1256, ptr %5, align 8
  %1257 = extractvalue { ptr, i32 } %1255, 1
  store i32 %1257, ptr %6, align 4
  br label %1262

1258:                                             ; preds = %1215
  %1259 = landingpad { ptr, i32 }
          cleanup
  %1260 = extractvalue { ptr, i32 } %1259, 0
  store ptr %1260, ptr %5, align 8
  %1261 = extractvalue { ptr, i32 } %1259, 1
  store i32 %1261, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %58) #5
  br label %1262

1262:                                             ; preds = %1258, %1254
  call void @llvm.lifetime.end.p0(i64 24, ptr %58) #5
  br label %12015

1263:                                             ; preds = %1218
  %1264 = landingpad { ptr, i32 }
          cleanup
  %1265 = extractvalue { ptr, i32 } %1264, 0
  store ptr %1265, ptr %5, align 8
  %1266 = extractvalue { ptr, i32 } %1264, 1
  store i32 %1266, ptr %6, align 4
  br label %1271

1267:                                             ; preds = %1219
  %1268 = landingpad { ptr, i32 }
          cleanup
  %1269 = extractvalue { ptr, i32 } %1268, 0
  store ptr %1269, ptr %5, align 8
  %1270 = extractvalue { ptr, i32 } %1268, 1
  store i32 %1270, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %59) #5
  br label %1271

1271:                                             ; preds = %1267, %1263
  call void @llvm.lifetime.end.p0(i64 24, ptr %59) #5
  br label %12015

1272:                                             ; preds = %1222
  %1273 = landingpad { ptr, i32 }
          cleanup
  %1274 = extractvalue { ptr, i32 } %1273, 0
  store ptr %1274, ptr %5, align 8
  %1275 = extractvalue { ptr, i32 } %1273, 1
  store i32 %1275, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %60) #5
  br label %12015

1276:                                             ; preds = %1230
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1277 unwind label %1026

1277:                                             ; preds = %1276
  call void @llvm.lifetime.start.p0(i64 1, ptr %61) #5
  store i8 0, ptr %61, align 1, !tbaa !9
  %1278 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %1279 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1278, ptr noundef nonnull align 1 dereferenceable(1) %61)
          to label %1280 unwind label %1311

1280:                                             ; preds = %1277
  call void @llvm.lifetime.end.p0(i64 1, ptr %61) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1281 unwind label %1026

1281:                                             ; preds = %1280
  call void @llvm.lifetime.start.p0(i64 24, ptr %62) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %62, i32 noundef 10)
          to label %1282 unwind label %1315

1282:                                             ; preds = %1281
  %1283 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %1284 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1283, ptr noundef nonnull align 8 dereferenceable(24) %62)
          to label %1285 unwind label %1319

1285:                                             ; preds = %1282
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %62) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %62) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %63) #5
  invoke void @_ZN5sc_dt6sc_intILi16EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %63, i32 noundef 100)
          to label %1286 unwind label %1324

1286:                                             ; preds = %1285
  %1287 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %1288 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1287, ptr noundef nonnull align 8 dereferenceable(24) %63)
          to label %1289 unwind label %1328

1289:                                             ; preds = %1286
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %63) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %63) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %64) #5
  store i8 0, ptr %64, align 1, !tbaa !9
  %1290 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %1291 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1290, ptr noundef nonnull align 1 dereferenceable(1) %64)
          to label %1292 unwind label %1333

1292:                                             ; preds = %1289
  call void @llvm.lifetime.end.p0(i64 1, ptr %64) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %65) #5
  store i8 1, ptr %65, align 1, !tbaa !9
  %1293 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %1294 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1293, ptr noundef nonnull align 1 dereferenceable(1) %65)
          to label %1295 unwind label %1337

1295:                                             ; preds = %1292
  call void @llvm.lifetime.end.p0(i64 1, ptr %65) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1296 unwind label %1026

1296:                                             ; preds = %1295
  br label %1297

1297:                                             ; preds = %1346, %1296
  br label %1298

1298:                                             ; preds = %1297
  call void @llvm.lifetime.start.p0(i64 1, ptr %66) #5
  store i8 0, ptr %66, align 1, !tbaa !9
  %1299 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %1300 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1299, ptr noundef nonnull align 1 dereferenceable(1) %66)
          to label %1301 unwind label %1341

1301:                                             ; preds = %1298
  call void @llvm.lifetime.end.p0(i64 1, ptr %66) #5
  %1302 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %1303 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1302)
          to label %1304 unwind label %1026

1304:                                             ; preds = %1301
  %1305 = load i8, ptr %1303, align 1, !tbaa !9, !range !11, !noundef !12
  %1306 = trunc i8 %1305 to i1
  %1307 = zext i1 %1306 to i32
  %1308 = icmp eq i32 %1307, 1
  br i1 %1308, label %1309, label %1345

1309:                                             ; preds = %1304
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1310 unwind label %1026

1310:                                             ; preds = %1309
  br label %1347

1311:                                             ; preds = %1277
  %1312 = landingpad { ptr, i32 }
          cleanup
  %1313 = extractvalue { ptr, i32 } %1312, 0
  store ptr %1313, ptr %5, align 8
  %1314 = extractvalue { ptr, i32 } %1312, 1
  store i32 %1314, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %61) #5
  br label %12015

1315:                                             ; preds = %1281
  %1316 = landingpad { ptr, i32 }
          cleanup
  %1317 = extractvalue { ptr, i32 } %1316, 0
  store ptr %1317, ptr %5, align 8
  %1318 = extractvalue { ptr, i32 } %1316, 1
  store i32 %1318, ptr %6, align 4
  br label %1323

1319:                                             ; preds = %1282
  %1320 = landingpad { ptr, i32 }
          cleanup
  %1321 = extractvalue { ptr, i32 } %1320, 0
  store ptr %1321, ptr %5, align 8
  %1322 = extractvalue { ptr, i32 } %1320, 1
  store i32 %1322, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %62) #5
  br label %1323

1323:                                             ; preds = %1319, %1315
  call void @llvm.lifetime.end.p0(i64 24, ptr %62) #5
  br label %12015

1324:                                             ; preds = %1285
  %1325 = landingpad { ptr, i32 }
          cleanup
  %1326 = extractvalue { ptr, i32 } %1325, 0
  store ptr %1326, ptr %5, align 8
  %1327 = extractvalue { ptr, i32 } %1325, 1
  store i32 %1327, ptr %6, align 4
  br label %1332

1328:                                             ; preds = %1286
  %1329 = landingpad { ptr, i32 }
          cleanup
  %1330 = extractvalue { ptr, i32 } %1329, 0
  store ptr %1330, ptr %5, align 8
  %1331 = extractvalue { ptr, i32 } %1329, 1
  store i32 %1331, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %63) #5
  br label %1332

1332:                                             ; preds = %1328, %1324
  call void @llvm.lifetime.end.p0(i64 24, ptr %63) #5
  br label %12015

1333:                                             ; preds = %1289
  %1334 = landingpad { ptr, i32 }
          cleanup
  %1335 = extractvalue { ptr, i32 } %1334, 0
  store ptr %1335, ptr %5, align 8
  %1336 = extractvalue { ptr, i32 } %1334, 1
  store i32 %1336, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %64) #5
  br label %12015

1337:                                             ; preds = %1292
  %1338 = landingpad { ptr, i32 }
          cleanup
  %1339 = extractvalue { ptr, i32 } %1338, 0
  store ptr %1339, ptr %5, align 8
  %1340 = extractvalue { ptr, i32 } %1338, 1
  store i32 %1340, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %65) #5
  br label %12015

1341:                                             ; preds = %1298
  %1342 = landingpad { ptr, i32 }
          cleanup
  %1343 = extractvalue { ptr, i32 } %1342, 0
  store ptr %1343, ptr %5, align 8
  %1344 = extractvalue { ptr, i32 } %1342, 1
  store i32 %1344, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %66) #5
  br label %12015

1345:                                             ; preds = %1304
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1346 unwind label %1026

1346:                                             ; preds = %1345
  br label %1297, !llvm.loop !19

1347:                                             ; preds = %1310
  call void @llvm.lifetime.start.p0(i64 24, ptr %67) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %67, i32 noundef 16)
          to label %1348 unwind label %1369

1348:                                             ; preds = %1347
  %1349 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %1350 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1349, ptr noundef nonnull align 8 dereferenceable(24) %67)
          to label %1351 unwind label %1373

1351:                                             ; preds = %1348
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %67) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %67) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %68) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %68, i32 noundef 2)
          to label %1352 unwind label %1378

1352:                                             ; preds = %1351
  %1353 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %1354 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1353, ptr noundef nonnull align 8 dereferenceable(24) %68)
          to label %1355 unwind label %1382

1355:                                             ; preds = %1352
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %68) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %68) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %69) #5
  store i8 1, ptr %69, align 1, !tbaa !9
  %1356 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %1357 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1356, ptr noundef nonnull align 1 dereferenceable(1) %69)
          to label %1358 unwind label %1387

1358:                                             ; preds = %1355
  call void @llvm.lifetime.end.p0(i64 1, ptr %69) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1359 unwind label %1026

1359:                                             ; preds = %1358
  br label %1360

1360:                                             ; preds = %1368, %1359
  %1361 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %1362 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1361)
          to label %1363 unwind label %1026

1363:                                             ; preds = %1360
  %1364 = load i8, ptr %1362, align 1, !tbaa !9, !range !11, !noundef !12
  %1365 = trunc i8 %1364 to i1
  %1366 = xor i1 %1365, true
  br i1 %1366, label %1367, label %1391

1367:                                             ; preds = %1363
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1368 unwind label %1026

1368:                                             ; preds = %1367
  br label %1360, !llvm.loop !20

1369:                                             ; preds = %1347
  %1370 = landingpad { ptr, i32 }
          cleanup
  %1371 = extractvalue { ptr, i32 } %1370, 0
  store ptr %1371, ptr %5, align 8
  %1372 = extractvalue { ptr, i32 } %1370, 1
  store i32 %1372, ptr %6, align 4
  br label %1377

1373:                                             ; preds = %1348
  %1374 = landingpad { ptr, i32 }
          cleanup
  %1375 = extractvalue { ptr, i32 } %1374, 0
  store ptr %1375, ptr %5, align 8
  %1376 = extractvalue { ptr, i32 } %1374, 1
  store i32 %1376, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %67) #5
  br label %1377

1377:                                             ; preds = %1373, %1369
  call void @llvm.lifetime.end.p0(i64 24, ptr %67) #5
  br label %12015

1378:                                             ; preds = %1351
  %1379 = landingpad { ptr, i32 }
          cleanup
  %1380 = extractvalue { ptr, i32 } %1379, 0
  store ptr %1380, ptr %5, align 8
  %1381 = extractvalue { ptr, i32 } %1379, 1
  store i32 %1381, ptr %6, align 4
  br label %1386

1382:                                             ; preds = %1352
  %1383 = landingpad { ptr, i32 }
          cleanup
  %1384 = extractvalue { ptr, i32 } %1383, 0
  store ptr %1384, ptr %5, align 8
  %1385 = extractvalue { ptr, i32 } %1383, 1
  store i32 %1385, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %68) #5
  br label %1386

1386:                                             ; preds = %1382, %1378
  call void @llvm.lifetime.end.p0(i64 24, ptr %68) #5
  br label %12015

1387:                                             ; preds = %1355
  %1388 = landingpad { ptr, i32 }
          cleanup
  %1389 = extractvalue { ptr, i32 } %1388, 0
  store ptr %1389, ptr %5, align 8
  %1390 = extractvalue { ptr, i32 } %1388, 1
  store i32 %1390, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %69) #5
  br label %12015

1391:                                             ; preds = %1363
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1392 unwind label %1026

1392:                                             ; preds = %1391
  call void @llvm.lifetime.start.p0(i64 1, ptr %70) #5
  store i8 0, ptr %70, align 1, !tbaa !9
  %1393 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %1394 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1393, ptr noundef nonnull align 1 dereferenceable(1) %70)
          to label %1395 unwind label %1426

1395:                                             ; preds = %1392
  call void @llvm.lifetime.end.p0(i64 1, ptr %70) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1396 unwind label %1026

1396:                                             ; preds = %1395
  call void @llvm.lifetime.start.p0(i64 24, ptr %71) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %71, i32 noundef 18)
          to label %1397 unwind label %1430

1397:                                             ; preds = %1396
  %1398 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %1399 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1398, ptr noundef nonnull align 8 dereferenceable(24) %71)
          to label %1400 unwind label %1434

1400:                                             ; preds = %1397
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %71) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %71) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %72) #5
  invoke void @_ZN5sc_dt6sc_intILi16EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %72, i32 noundef 100)
          to label %1401 unwind label %1439

1401:                                             ; preds = %1400
  %1402 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %1403 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1402, ptr noundef nonnull align 8 dereferenceable(24) %72)
          to label %1404 unwind label %1443

1404:                                             ; preds = %1401
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %72) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %72) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %73) #5
  store i8 0, ptr %73, align 1, !tbaa !9
  %1405 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %1406 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1405, ptr noundef nonnull align 1 dereferenceable(1) %73)
          to label %1407 unwind label %1448

1407:                                             ; preds = %1404
  call void @llvm.lifetime.end.p0(i64 1, ptr %73) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %74) #5
  store i8 1, ptr %74, align 1, !tbaa !9
  %1408 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %1409 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1408, ptr noundef nonnull align 1 dereferenceable(1) %74)
          to label %1410 unwind label %1452

1410:                                             ; preds = %1407
  call void @llvm.lifetime.end.p0(i64 1, ptr %74) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1411 unwind label %1026

1411:                                             ; preds = %1410
  br label %1412

1412:                                             ; preds = %1461, %1411
  br label %1413

1413:                                             ; preds = %1412
  call void @llvm.lifetime.start.p0(i64 1, ptr %75) #5
  store i8 0, ptr %75, align 1, !tbaa !9
  %1414 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %1415 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1414, ptr noundef nonnull align 1 dereferenceable(1) %75)
          to label %1416 unwind label %1456

1416:                                             ; preds = %1413
  call void @llvm.lifetime.end.p0(i64 1, ptr %75) #5
  %1417 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %1418 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1417)
          to label %1419 unwind label %1026

1419:                                             ; preds = %1416
  %1420 = load i8, ptr %1418, align 1, !tbaa !9, !range !11, !noundef !12
  %1421 = trunc i8 %1420 to i1
  %1422 = zext i1 %1421 to i32
  %1423 = icmp eq i32 %1422, 1
  br i1 %1423, label %1424, label %1460

1424:                                             ; preds = %1419
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1425 unwind label %1026

1425:                                             ; preds = %1424
  br label %1462

1426:                                             ; preds = %1392
  %1427 = landingpad { ptr, i32 }
          cleanup
  %1428 = extractvalue { ptr, i32 } %1427, 0
  store ptr %1428, ptr %5, align 8
  %1429 = extractvalue { ptr, i32 } %1427, 1
  store i32 %1429, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %70) #5
  br label %12015

1430:                                             ; preds = %1396
  %1431 = landingpad { ptr, i32 }
          cleanup
  %1432 = extractvalue { ptr, i32 } %1431, 0
  store ptr %1432, ptr %5, align 8
  %1433 = extractvalue { ptr, i32 } %1431, 1
  store i32 %1433, ptr %6, align 4
  br label %1438

1434:                                             ; preds = %1397
  %1435 = landingpad { ptr, i32 }
          cleanup
  %1436 = extractvalue { ptr, i32 } %1435, 0
  store ptr %1436, ptr %5, align 8
  %1437 = extractvalue { ptr, i32 } %1435, 1
  store i32 %1437, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %71) #5
  br label %1438

1438:                                             ; preds = %1434, %1430
  call void @llvm.lifetime.end.p0(i64 24, ptr %71) #5
  br label %12015

1439:                                             ; preds = %1400
  %1440 = landingpad { ptr, i32 }
          cleanup
  %1441 = extractvalue { ptr, i32 } %1440, 0
  store ptr %1441, ptr %5, align 8
  %1442 = extractvalue { ptr, i32 } %1440, 1
  store i32 %1442, ptr %6, align 4
  br label %1447

1443:                                             ; preds = %1401
  %1444 = landingpad { ptr, i32 }
          cleanup
  %1445 = extractvalue { ptr, i32 } %1444, 0
  store ptr %1445, ptr %5, align 8
  %1446 = extractvalue { ptr, i32 } %1444, 1
  store i32 %1446, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %72) #5
  br label %1447

1447:                                             ; preds = %1443, %1439
  call void @llvm.lifetime.end.p0(i64 24, ptr %72) #5
  br label %12015

1448:                                             ; preds = %1404
  %1449 = landingpad { ptr, i32 }
          cleanup
  %1450 = extractvalue { ptr, i32 } %1449, 0
  store ptr %1450, ptr %5, align 8
  %1451 = extractvalue { ptr, i32 } %1449, 1
  store i32 %1451, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %73) #5
  br label %12015

1452:                                             ; preds = %1407
  %1453 = landingpad { ptr, i32 }
          cleanup
  %1454 = extractvalue { ptr, i32 } %1453, 0
  store ptr %1454, ptr %5, align 8
  %1455 = extractvalue { ptr, i32 } %1453, 1
  store i32 %1455, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %74) #5
  br label %12015

1456:                                             ; preds = %1413
  %1457 = landingpad { ptr, i32 }
          cleanup
  %1458 = extractvalue { ptr, i32 } %1457, 0
  store ptr %1458, ptr %5, align 8
  %1459 = extractvalue { ptr, i32 } %1457, 1
  store i32 %1459, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %75) #5
  br label %12015

1460:                                             ; preds = %1419
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1461 unwind label %1026

1461:                                             ; preds = %1460
  br label %1412, !llvm.loop !21

1462:                                             ; preds = %1425
  call void @llvm.lifetime.start.p0(i64 24, ptr %76) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %76, i32 noundef 20)
          to label %1463 unwind label %1492

1463:                                             ; preds = %1462
  %1464 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %1465 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1464, ptr noundef nonnull align 8 dereferenceable(24) %76)
          to label %1466 unwind label %1496

1466:                                             ; preds = %1463
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %76) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %76) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %77) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %77, i32 noundef 50)
          to label %1467 unwind label %1501

1467:                                             ; preds = %1466
  %1468 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %1469 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1468, ptr noundef nonnull align 8 dereferenceable(24) %77)
          to label %1470 unwind label %1505

1470:                                             ; preds = %1467
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %77) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %77) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %78) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %78, i32 noundef 4)
          to label %1471 unwind label %1510

1471:                                             ; preds = %1470
  %1472 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %1473 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1472, ptr noundef nonnull align 8 dereferenceable(24) %78)
          to label %1474 unwind label %1514

1474:                                             ; preds = %1471
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %78) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %78) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %79) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %79, i32 noundef 2)
          to label %1475 unwind label %1519

1475:                                             ; preds = %1474
  %1476 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %1477 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1476, ptr noundef nonnull align 8 dereferenceable(24) %79)
          to label %1478 unwind label %1523

1478:                                             ; preds = %1475
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %79) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %79) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %80) #5
  store i8 1, ptr %80, align 1, !tbaa !9
  %1479 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %1480 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1479, ptr noundef nonnull align 1 dereferenceable(1) %80)
          to label %1481 unwind label %1528

1481:                                             ; preds = %1478
  call void @llvm.lifetime.end.p0(i64 1, ptr %80) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1482 unwind label %1026

1482:                                             ; preds = %1481
  br label %1483

1483:                                             ; preds = %1491, %1482
  %1484 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %1485 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1484)
          to label %1486 unwind label %1026

1486:                                             ; preds = %1483
  %1487 = load i8, ptr %1485, align 1, !tbaa !9, !range !11, !noundef !12
  %1488 = trunc i8 %1487 to i1
  %1489 = xor i1 %1488, true
  br i1 %1489, label %1490, label %1532

1490:                                             ; preds = %1486
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1491 unwind label %1026

1491:                                             ; preds = %1490
  br label %1483, !llvm.loop !22

1492:                                             ; preds = %1462
  %1493 = landingpad { ptr, i32 }
          cleanup
  %1494 = extractvalue { ptr, i32 } %1493, 0
  store ptr %1494, ptr %5, align 8
  %1495 = extractvalue { ptr, i32 } %1493, 1
  store i32 %1495, ptr %6, align 4
  br label %1500

1496:                                             ; preds = %1463
  %1497 = landingpad { ptr, i32 }
          cleanup
  %1498 = extractvalue { ptr, i32 } %1497, 0
  store ptr %1498, ptr %5, align 8
  %1499 = extractvalue { ptr, i32 } %1497, 1
  store i32 %1499, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %76) #5
  br label %1500

1500:                                             ; preds = %1496, %1492
  call void @llvm.lifetime.end.p0(i64 24, ptr %76) #5
  br label %12015

1501:                                             ; preds = %1466
  %1502 = landingpad { ptr, i32 }
          cleanup
  %1503 = extractvalue { ptr, i32 } %1502, 0
  store ptr %1503, ptr %5, align 8
  %1504 = extractvalue { ptr, i32 } %1502, 1
  store i32 %1504, ptr %6, align 4
  br label %1509

1505:                                             ; preds = %1467
  %1506 = landingpad { ptr, i32 }
          cleanup
  %1507 = extractvalue { ptr, i32 } %1506, 0
  store ptr %1507, ptr %5, align 8
  %1508 = extractvalue { ptr, i32 } %1506, 1
  store i32 %1508, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %77) #5
  br label %1509

1509:                                             ; preds = %1505, %1501
  call void @llvm.lifetime.end.p0(i64 24, ptr %77) #5
  br label %12015

1510:                                             ; preds = %1470
  %1511 = landingpad { ptr, i32 }
          cleanup
  %1512 = extractvalue { ptr, i32 } %1511, 0
  store ptr %1512, ptr %5, align 8
  %1513 = extractvalue { ptr, i32 } %1511, 1
  store i32 %1513, ptr %6, align 4
  br label %1518

1514:                                             ; preds = %1471
  %1515 = landingpad { ptr, i32 }
          cleanup
  %1516 = extractvalue { ptr, i32 } %1515, 0
  store ptr %1516, ptr %5, align 8
  %1517 = extractvalue { ptr, i32 } %1515, 1
  store i32 %1517, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %78) #5
  br label %1518

1518:                                             ; preds = %1514, %1510
  call void @llvm.lifetime.end.p0(i64 24, ptr %78) #5
  br label %12015

1519:                                             ; preds = %1474
  %1520 = landingpad { ptr, i32 }
          cleanup
  %1521 = extractvalue { ptr, i32 } %1520, 0
  store ptr %1521, ptr %5, align 8
  %1522 = extractvalue { ptr, i32 } %1520, 1
  store i32 %1522, ptr %6, align 4
  br label %1527

1523:                                             ; preds = %1475
  %1524 = landingpad { ptr, i32 }
          cleanup
  %1525 = extractvalue { ptr, i32 } %1524, 0
  store ptr %1525, ptr %5, align 8
  %1526 = extractvalue { ptr, i32 } %1524, 1
  store i32 %1526, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %79) #5
  br label %1527

1527:                                             ; preds = %1523, %1519
  call void @llvm.lifetime.end.p0(i64 24, ptr %79) #5
  br label %12015

1528:                                             ; preds = %1478
  %1529 = landingpad { ptr, i32 }
          cleanup
  %1530 = extractvalue { ptr, i32 } %1529, 0
  store ptr %1530, ptr %5, align 8
  %1531 = extractvalue { ptr, i32 } %1529, 1
  store i32 %1531, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %80) #5
  br label %12015

1532:                                             ; preds = %1486
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1533 unwind label %1026

1533:                                             ; preds = %1532
  call void @llvm.lifetime.start.p0(i64 1, ptr %81) #5
  store i8 0, ptr %81, align 1, !tbaa !9
  %1534 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %1535 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1534, ptr noundef nonnull align 1 dereferenceable(1) %81)
          to label %1536 unwind label %1555

1536:                                             ; preds = %1533
  call void @llvm.lifetime.end.p0(i64 1, ptr %81) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1537 unwind label %1026

1537:                                             ; preds = %1536
  %1538 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 7
  %1539 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1538)
          to label %1540 unwind label %1026

1540:                                             ; preds = %1537
  %1541 = load i8, ptr %1539, align 1, !tbaa !9, !range !11, !noundef !12
  %1542 = trunc i8 %1541 to i1
  %1543 = xor i1 %1542, true
  %1544 = zext i1 %1543 to i32
  %1545 = icmp eq i32 %1544, 1
  br i1 %1545, label %1546, label %1568

1546:                                             ; preds = %1540
  %1547 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 37)
          to label %1548 unwind label %1026

1548:                                             ; preds = %1546
  %1549 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 53)
          to label %1550 unwind label %1026

1550:                                             ; preds = %1548
  call void @llvm.lifetime.start.p0(i64 24, ptr %82) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %82, i32 noundef 5)
          to label %1551 unwind label %1559

1551:                                             ; preds = %1550
  %1552 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %1553 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1552, ptr noundef nonnull align 8 dereferenceable(24) %82)
          to label %1554 unwind label %1563

1554:                                             ; preds = %1551
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %82) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %82) #5
  br label %1586

1555:                                             ; preds = %1533
  %1556 = landingpad { ptr, i32 }
          cleanup
  %1557 = extractvalue { ptr, i32 } %1556, 0
  store ptr %1557, ptr %5, align 8
  %1558 = extractvalue { ptr, i32 } %1556, 1
  store i32 %1558, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %81) #5
  br label %12015

1559:                                             ; preds = %1550
  %1560 = landingpad { ptr, i32 }
          cleanup
  %1561 = extractvalue { ptr, i32 } %1560, 0
  store ptr %1561, ptr %5, align 8
  %1562 = extractvalue { ptr, i32 } %1560, 1
  store i32 %1562, ptr %6, align 4
  br label %1567

1563:                                             ; preds = %1551
  %1564 = landingpad { ptr, i32 }
          cleanup
  %1565 = extractvalue { ptr, i32 } %1564, 0
  store ptr %1565, ptr %5, align 8
  %1566 = extractvalue { ptr, i32 } %1564, 1
  store i32 %1566, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %82) #5
  br label %1567

1567:                                             ; preds = %1563, %1559
  call void @llvm.lifetime.end.p0(i64 24, ptr %82) #5
  br label %12015

1568:                                             ; preds = %1540
  %1569 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 35)
          to label %1570 unwind label %1026

1570:                                             ; preds = %1568
  %1571 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 51)
          to label %1572 unwind label %1026

1572:                                             ; preds = %1570
  call void @llvm.lifetime.start.p0(i64 24, ptr %83) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %83, i32 noundef 3)
          to label %1573 unwind label %1577

1573:                                             ; preds = %1572
  %1574 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %1575 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1574, ptr noundef nonnull align 8 dereferenceable(24) %83)
          to label %1576 unwind label %1581

1576:                                             ; preds = %1573
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %83) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %83) #5
  br label %1586

1577:                                             ; preds = %1572
  %1578 = landingpad { ptr, i32 }
          cleanup
  %1579 = extractvalue { ptr, i32 } %1578, 0
  store ptr %1579, ptr %5, align 8
  %1580 = extractvalue { ptr, i32 } %1578, 1
  store i32 %1580, ptr %6, align 4
  br label %1585

1581:                                             ; preds = %1573
  %1582 = landingpad { ptr, i32 }
          cleanup
  %1583 = extractvalue { ptr, i32 } %1582, 0
  store ptr %1583, ptr %5, align 8
  %1584 = extractvalue { ptr, i32 } %1582, 1
  store i32 %1584, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %83) #5
  br label %1585

1585:                                             ; preds = %1581, %1577
  call void @llvm.lifetime.end.p0(i64 24, ptr %83) #5
  br label %12015

1586:                                             ; preds = %1576, %1554
  call void @llvm.lifetime.start.p0(i64 24, ptr %84) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %84, i32 noundef 0)
          to label %1587 unwind label %1612

1587:                                             ; preds = %1586
  %1588 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %1589 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1588, ptr noundef nonnull align 8 dereferenceable(24) %84)
          to label %1590 unwind label %1616

1590:                                             ; preds = %1587
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %84) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %84) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %85) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %85, i32 noundef 32)
          to label %1591 unwind label %1621

1591:                                             ; preds = %1590
  %1592 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %1593 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1592, ptr noundef nonnull align 8 dereferenceable(24) %85)
          to label %1594 unwind label %1625

1594:                                             ; preds = %1591
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %85) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %85) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %86) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %86, i32 noundef 2)
          to label %1595 unwind label %1630

1595:                                             ; preds = %1594
  %1596 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %1597 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1596, ptr noundef nonnull align 8 dereferenceable(24) %86)
          to label %1598 unwind label %1634

1598:                                             ; preds = %1595
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %86) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %86) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %87) #5
  store i8 1, ptr %87, align 1, !tbaa !9
  %1599 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %1600 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1599, ptr noundef nonnull align 1 dereferenceable(1) %87)
          to label %1601 unwind label %1639

1601:                                             ; preds = %1598
  call void @llvm.lifetime.end.p0(i64 1, ptr %87) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1602 unwind label %1026

1602:                                             ; preds = %1601
  br label %1603

1603:                                             ; preds = %1611, %1602
  %1604 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %1605 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1604)
          to label %1606 unwind label %1026

1606:                                             ; preds = %1603
  %1607 = load i8, ptr %1605, align 1, !tbaa !9, !range !11, !noundef !12
  %1608 = trunc i8 %1607 to i1
  %1609 = xor i1 %1608, true
  br i1 %1609, label %1610, label %1643

1610:                                             ; preds = %1606
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1611 unwind label %1026

1611:                                             ; preds = %1610
  br label %1603, !llvm.loop !23

1612:                                             ; preds = %1586
  %1613 = landingpad { ptr, i32 }
          cleanup
  %1614 = extractvalue { ptr, i32 } %1613, 0
  store ptr %1614, ptr %5, align 8
  %1615 = extractvalue { ptr, i32 } %1613, 1
  store i32 %1615, ptr %6, align 4
  br label %1620

1616:                                             ; preds = %1587
  %1617 = landingpad { ptr, i32 }
          cleanup
  %1618 = extractvalue { ptr, i32 } %1617, 0
  store ptr %1618, ptr %5, align 8
  %1619 = extractvalue { ptr, i32 } %1617, 1
  store i32 %1619, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %84) #5
  br label %1620

1620:                                             ; preds = %1616, %1612
  call void @llvm.lifetime.end.p0(i64 24, ptr %84) #5
  br label %12015

1621:                                             ; preds = %1590
  %1622 = landingpad { ptr, i32 }
          cleanup
  %1623 = extractvalue { ptr, i32 } %1622, 0
  store ptr %1623, ptr %5, align 8
  %1624 = extractvalue { ptr, i32 } %1622, 1
  store i32 %1624, ptr %6, align 4
  br label %1629

1625:                                             ; preds = %1591
  %1626 = landingpad { ptr, i32 }
          cleanup
  %1627 = extractvalue { ptr, i32 } %1626, 0
  store ptr %1627, ptr %5, align 8
  %1628 = extractvalue { ptr, i32 } %1626, 1
  store i32 %1628, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %85) #5
  br label %1629

1629:                                             ; preds = %1625, %1621
  call void @llvm.lifetime.end.p0(i64 24, ptr %85) #5
  br label %12015

1630:                                             ; preds = %1594
  %1631 = landingpad { ptr, i32 }
          cleanup
  %1632 = extractvalue { ptr, i32 } %1631, 0
  store ptr %1632, ptr %5, align 8
  %1633 = extractvalue { ptr, i32 } %1631, 1
  store i32 %1633, ptr %6, align 4
  br label %1638

1634:                                             ; preds = %1595
  %1635 = landingpad { ptr, i32 }
          cleanup
  %1636 = extractvalue { ptr, i32 } %1635, 0
  store ptr %1636, ptr %5, align 8
  %1637 = extractvalue { ptr, i32 } %1635, 1
  store i32 %1637, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %86) #5
  br label %1638

1638:                                             ; preds = %1634, %1630
  call void @llvm.lifetime.end.p0(i64 24, ptr %86) #5
  br label %12015

1639:                                             ; preds = %1598
  %1640 = landingpad { ptr, i32 }
          cleanup
  %1641 = extractvalue { ptr, i32 } %1640, 0
  store ptr %1641, ptr %5, align 8
  %1642 = extractvalue { ptr, i32 } %1640, 1
  store i32 %1642, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %87) #5
  br label %12015

1643:                                             ; preds = %1606
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1644 unwind label %1026

1644:                                             ; preds = %1643
  call void @llvm.lifetime.start.p0(i64 1, ptr %88) #5
  store i8 0, ptr %88, align 1, !tbaa !9
  %1645 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %1646 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1645, ptr noundef nonnull align 1 dereferenceable(1) %88)
          to label %1647 unwind label %1678

1647:                                             ; preds = %1644
  call void @llvm.lifetime.end.p0(i64 1, ptr %88) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1648 unwind label %1026

1648:                                             ; preds = %1647
  %1649 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 30)
          to label %1650 unwind label %1026

1650:                                             ; preds = %1648
  %1651 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %1652 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1651, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %1653 unwind label %1026

1653:                                             ; preds = %1650
  %1654 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %1655 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1654, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %1656 unwind label %1026

1656:                                             ; preds = %1653
  call void @llvm.lifetime.start.p0(i64 1, ptr %89) #5
  store i8 0, ptr %89, align 1, !tbaa !9
  %1657 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %1658 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1657, ptr noundef nonnull align 1 dereferenceable(1) %89)
          to label %1659 unwind label %1682

1659:                                             ; preds = %1656
  call void @llvm.lifetime.end.p0(i64 1, ptr %89) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %90) #5
  store i8 1, ptr %90, align 1, !tbaa !9
  %1660 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %1661 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1660, ptr noundef nonnull align 1 dereferenceable(1) %90)
          to label %1662 unwind label %1686

1662:                                             ; preds = %1659
  call void @llvm.lifetime.end.p0(i64 1, ptr %90) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1663 unwind label %1026

1663:                                             ; preds = %1662
  br label %1664

1664:                                             ; preds = %1695, %1663
  br label %1665

1665:                                             ; preds = %1664
  call void @llvm.lifetime.start.p0(i64 1, ptr %91) #5
  store i8 0, ptr %91, align 1, !tbaa !9
  %1666 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %1667 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1666, ptr noundef nonnull align 1 dereferenceable(1) %91)
          to label %1668 unwind label %1690

1668:                                             ; preds = %1665
  call void @llvm.lifetime.end.p0(i64 1, ptr %91) #5
  %1669 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %1670 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1669)
          to label %1671 unwind label %1026

1671:                                             ; preds = %1668
  %1672 = load i8, ptr %1670, align 1, !tbaa !9, !range !11, !noundef !12
  %1673 = trunc i8 %1672 to i1
  %1674 = zext i1 %1673 to i32
  %1675 = icmp eq i32 %1674, 1
  br i1 %1675, label %1676, label %1694

1676:                                             ; preds = %1671
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1677 unwind label %1026

1677:                                             ; preds = %1676
  br label %1696

1678:                                             ; preds = %1644
  %1679 = landingpad { ptr, i32 }
          cleanup
  %1680 = extractvalue { ptr, i32 } %1679, 0
  store ptr %1680, ptr %5, align 8
  %1681 = extractvalue { ptr, i32 } %1679, 1
  store i32 %1681, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %88) #5
  br label %12015

1682:                                             ; preds = %1656
  %1683 = landingpad { ptr, i32 }
          cleanup
  %1684 = extractvalue { ptr, i32 } %1683, 0
  store ptr %1684, ptr %5, align 8
  %1685 = extractvalue { ptr, i32 } %1683, 1
  store i32 %1685, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %89) #5
  br label %12015

1686:                                             ; preds = %1659
  %1687 = landingpad { ptr, i32 }
          cleanup
  %1688 = extractvalue { ptr, i32 } %1687, 0
  store ptr %1688, ptr %5, align 8
  %1689 = extractvalue { ptr, i32 } %1687, 1
  store i32 %1689, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %90) #5
  br label %12015

1690:                                             ; preds = %1665
  %1691 = landingpad { ptr, i32 }
          cleanup
  %1692 = extractvalue { ptr, i32 } %1691, 0
  store ptr %1692, ptr %5, align 8
  %1693 = extractvalue { ptr, i32 } %1691, 1
  store i32 %1693, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %91) #5
  br label %12015

1694:                                             ; preds = %1671
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1695 unwind label %1026

1695:                                             ; preds = %1694
  br label %1664, !llvm.loop !24

1696:                                             ; preds = %1677
  call void @llvm.lifetime.start.p0(i64 24, ptr %92) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %92, i32 noundef 48)
          to label %1697 unwind label %1718

1697:                                             ; preds = %1696
  %1698 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %1699 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1698, ptr noundef nonnull align 8 dereferenceable(24) %92)
          to label %1700 unwind label %1722

1700:                                             ; preds = %1697
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %92) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %92) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %93) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %93, i32 noundef 2)
          to label %1701 unwind label %1727

1701:                                             ; preds = %1700
  %1702 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %1703 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1702, ptr noundef nonnull align 8 dereferenceable(24) %93)
          to label %1704 unwind label %1731

1704:                                             ; preds = %1701
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %93) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %93) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %94) #5
  store i8 1, ptr %94, align 1, !tbaa !9
  %1705 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %1706 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1705, ptr noundef nonnull align 1 dereferenceable(1) %94)
          to label %1707 unwind label %1736

1707:                                             ; preds = %1704
  call void @llvm.lifetime.end.p0(i64 1, ptr %94) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1708 unwind label %1026

1708:                                             ; preds = %1707
  br label %1709

1709:                                             ; preds = %1717, %1708
  %1710 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %1711 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1710)
          to label %1712 unwind label %1026

1712:                                             ; preds = %1709
  %1713 = load i8, ptr %1711, align 1, !tbaa !9, !range !11, !noundef !12
  %1714 = trunc i8 %1713 to i1
  %1715 = xor i1 %1714, true
  br i1 %1715, label %1716, label %1740

1716:                                             ; preds = %1712
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1717 unwind label %1026

1717:                                             ; preds = %1716
  br label %1709, !llvm.loop !25

1718:                                             ; preds = %1696
  %1719 = landingpad { ptr, i32 }
          cleanup
  %1720 = extractvalue { ptr, i32 } %1719, 0
  store ptr %1720, ptr %5, align 8
  %1721 = extractvalue { ptr, i32 } %1719, 1
  store i32 %1721, ptr %6, align 4
  br label %1726

1722:                                             ; preds = %1697
  %1723 = landingpad { ptr, i32 }
          cleanup
  %1724 = extractvalue { ptr, i32 } %1723, 0
  store ptr %1724, ptr %5, align 8
  %1725 = extractvalue { ptr, i32 } %1723, 1
  store i32 %1725, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %92) #5
  br label %1726

1726:                                             ; preds = %1722, %1718
  call void @llvm.lifetime.end.p0(i64 24, ptr %92) #5
  br label %12015

1727:                                             ; preds = %1700
  %1728 = landingpad { ptr, i32 }
          cleanup
  %1729 = extractvalue { ptr, i32 } %1728, 0
  store ptr %1729, ptr %5, align 8
  %1730 = extractvalue { ptr, i32 } %1728, 1
  store i32 %1730, ptr %6, align 4
  br label %1735

1731:                                             ; preds = %1701
  %1732 = landingpad { ptr, i32 }
          cleanup
  %1733 = extractvalue { ptr, i32 } %1732, 0
  store ptr %1733, ptr %5, align 8
  %1734 = extractvalue { ptr, i32 } %1732, 1
  store i32 %1734, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %93) #5
  br label %1735

1735:                                             ; preds = %1731, %1727
  call void @llvm.lifetime.end.p0(i64 24, ptr %93) #5
  br label %12015

1736:                                             ; preds = %1704
  %1737 = landingpad { ptr, i32 }
          cleanup
  %1738 = extractvalue { ptr, i32 } %1737, 0
  store ptr %1738, ptr %5, align 8
  %1739 = extractvalue { ptr, i32 } %1737, 1
  store i32 %1739, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %94) #5
  br label %12015

1740:                                             ; preds = %1712
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1741 unwind label %1026

1741:                                             ; preds = %1740
  call void @llvm.lifetime.start.p0(i64 1, ptr %95) #5
  store i8 0, ptr %95, align 1, !tbaa !9
  %1742 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %1743 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1742, ptr noundef nonnull align 1 dereferenceable(1) %95)
          to label %1744 unwind label %1775

1744:                                             ; preds = %1741
  call void @llvm.lifetime.end.p0(i64 1, ptr %95) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1745 unwind label %1026

1745:                                             ; preds = %1744
  %1746 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %1747 unwind label %1026

1747:                                             ; preds = %1745
  %1748 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %1749 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1748, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %1750 unwind label %1026

1750:                                             ; preds = %1747
  %1751 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %1752 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1751, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %1753 unwind label %1026

1753:                                             ; preds = %1750
  call void @llvm.lifetime.start.p0(i64 1, ptr %96) #5
  store i8 0, ptr %96, align 1, !tbaa !9
  %1754 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %1755 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1754, ptr noundef nonnull align 1 dereferenceable(1) %96)
          to label %1756 unwind label %1779

1756:                                             ; preds = %1753
  call void @llvm.lifetime.end.p0(i64 1, ptr %96) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %97) #5
  store i8 1, ptr %97, align 1, !tbaa !9
  %1757 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %1758 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1757, ptr noundef nonnull align 1 dereferenceable(1) %97)
          to label %1759 unwind label %1783

1759:                                             ; preds = %1756
  call void @llvm.lifetime.end.p0(i64 1, ptr %97) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1760 unwind label %1026

1760:                                             ; preds = %1759
  br label %1761

1761:                                             ; preds = %1792, %1760
  br label %1762

1762:                                             ; preds = %1761
  call void @llvm.lifetime.start.p0(i64 1, ptr %98) #5
  store i8 0, ptr %98, align 1, !tbaa !9
  %1763 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %1764 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1763, ptr noundef nonnull align 1 dereferenceable(1) %98)
          to label %1765 unwind label %1787

1765:                                             ; preds = %1762
  call void @llvm.lifetime.end.p0(i64 1, ptr %98) #5
  %1766 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %1767 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1766)
          to label %1768 unwind label %1026

1768:                                             ; preds = %1765
  %1769 = load i8, ptr %1767, align 1, !tbaa !9, !range !11, !noundef !12
  %1770 = trunc i8 %1769 to i1
  %1771 = zext i1 %1770 to i32
  %1772 = icmp eq i32 %1771, 1
  br i1 %1772, label %1773, label %1791

1773:                                             ; preds = %1768
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1774 unwind label %1026

1774:                                             ; preds = %1773
  br label %1793

1775:                                             ; preds = %1741
  %1776 = landingpad { ptr, i32 }
          cleanup
  %1777 = extractvalue { ptr, i32 } %1776, 0
  store ptr %1777, ptr %5, align 8
  %1778 = extractvalue { ptr, i32 } %1776, 1
  store i32 %1778, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %95) #5
  br label %12015

1779:                                             ; preds = %1753
  %1780 = landingpad { ptr, i32 }
          cleanup
  %1781 = extractvalue { ptr, i32 } %1780, 0
  store ptr %1781, ptr %5, align 8
  %1782 = extractvalue { ptr, i32 } %1780, 1
  store i32 %1782, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %96) #5
  br label %12015

1783:                                             ; preds = %1756
  %1784 = landingpad { ptr, i32 }
          cleanup
  %1785 = extractvalue { ptr, i32 } %1784, 0
  store ptr %1785, ptr %5, align 8
  %1786 = extractvalue { ptr, i32 } %1784, 1
  store i32 %1786, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %97) #5
  br label %12015

1787:                                             ; preds = %1762
  %1788 = landingpad { ptr, i32 }
          cleanup
  %1789 = extractvalue { ptr, i32 } %1788, 0
  store ptr %1789, ptr %5, align 8
  %1790 = extractvalue { ptr, i32 } %1788, 1
  store i32 %1790, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %98) #5
  br label %12015

1791:                                             ; preds = %1768
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1792 unwind label %1026

1792:                                             ; preds = %1791
  br label %1761, !llvm.loop !26

1793:                                             ; preds = %1774
  call void @llvm.lifetime.start.p0(i64 24, ptr %99) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %99, i32 noundef 64)
          to label %1794 unwind label %1823

1794:                                             ; preds = %1793
  %1795 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %1796 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1795, ptr noundef nonnull align 8 dereferenceable(24) %99)
          to label %1797 unwind label %1827

1797:                                             ; preds = %1794
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %99) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %99) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %100) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %100, i32 noundef 2)
          to label %1798 unwind label %1832

1798:                                             ; preds = %1797
  %1799 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %1800 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1799, ptr noundef nonnull align 8 dereferenceable(24) %100)
          to label %1801 unwind label %1836

1801:                                             ; preds = %1798
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %100) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %100) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %101) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %101, i32 noundef 32)
          to label %1802 unwind label %1841

1802:                                             ; preds = %1801
  %1803 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %1804 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1803, ptr noundef nonnull align 8 dereferenceable(24) %101)
          to label %1805 unwind label %1845

1805:                                             ; preds = %1802
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %101) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %101) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %102) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %102, i32 noundef 2)
          to label %1806 unwind label %1850

1806:                                             ; preds = %1805
  %1807 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %1808 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1807, ptr noundef nonnull align 8 dereferenceable(24) %102)
          to label %1809 unwind label %1854

1809:                                             ; preds = %1806
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %102) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %102) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %103) #5
  store i8 1, ptr %103, align 1, !tbaa !9
  %1810 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %1811 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1810, ptr noundef nonnull align 1 dereferenceable(1) %103)
          to label %1812 unwind label %1859

1812:                                             ; preds = %1809
  call void @llvm.lifetime.end.p0(i64 1, ptr %103) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1813 unwind label %1026

1813:                                             ; preds = %1812
  br label %1814

1814:                                             ; preds = %1822, %1813
  %1815 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %1816 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1815)
          to label %1817 unwind label %1026

1817:                                             ; preds = %1814
  %1818 = load i8, ptr %1816, align 1, !tbaa !9, !range !11, !noundef !12
  %1819 = trunc i8 %1818 to i1
  %1820 = xor i1 %1819, true
  br i1 %1820, label %1821, label %1863

1821:                                             ; preds = %1817
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1822 unwind label %1026

1822:                                             ; preds = %1821
  br label %1814, !llvm.loop !27

1823:                                             ; preds = %1793
  %1824 = landingpad { ptr, i32 }
          cleanup
  %1825 = extractvalue { ptr, i32 } %1824, 0
  store ptr %1825, ptr %5, align 8
  %1826 = extractvalue { ptr, i32 } %1824, 1
  store i32 %1826, ptr %6, align 4
  br label %1831

1827:                                             ; preds = %1794
  %1828 = landingpad { ptr, i32 }
          cleanup
  %1829 = extractvalue { ptr, i32 } %1828, 0
  store ptr %1829, ptr %5, align 8
  %1830 = extractvalue { ptr, i32 } %1828, 1
  store i32 %1830, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %99) #5
  br label %1831

1831:                                             ; preds = %1827, %1823
  call void @llvm.lifetime.end.p0(i64 24, ptr %99) #5
  br label %12015

1832:                                             ; preds = %1797
  %1833 = landingpad { ptr, i32 }
          cleanup
  %1834 = extractvalue { ptr, i32 } %1833, 0
  store ptr %1834, ptr %5, align 8
  %1835 = extractvalue { ptr, i32 } %1833, 1
  store i32 %1835, ptr %6, align 4
  br label %1840

1836:                                             ; preds = %1798
  %1837 = landingpad { ptr, i32 }
          cleanup
  %1838 = extractvalue { ptr, i32 } %1837, 0
  store ptr %1838, ptr %5, align 8
  %1839 = extractvalue { ptr, i32 } %1837, 1
  store i32 %1839, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %100) #5
  br label %1840

1840:                                             ; preds = %1836, %1832
  call void @llvm.lifetime.end.p0(i64 24, ptr %100) #5
  br label %12015

1841:                                             ; preds = %1801
  %1842 = landingpad { ptr, i32 }
          cleanup
  %1843 = extractvalue { ptr, i32 } %1842, 0
  store ptr %1843, ptr %5, align 8
  %1844 = extractvalue { ptr, i32 } %1842, 1
  store i32 %1844, ptr %6, align 4
  br label %1849

1845:                                             ; preds = %1802
  %1846 = landingpad { ptr, i32 }
          cleanup
  %1847 = extractvalue { ptr, i32 } %1846, 0
  store ptr %1847, ptr %5, align 8
  %1848 = extractvalue { ptr, i32 } %1846, 1
  store i32 %1848, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %101) #5
  br label %1849

1849:                                             ; preds = %1845, %1841
  call void @llvm.lifetime.end.p0(i64 24, ptr %101) #5
  br label %12015

1850:                                             ; preds = %1805
  %1851 = landingpad { ptr, i32 }
          cleanup
  %1852 = extractvalue { ptr, i32 } %1851, 0
  store ptr %1852, ptr %5, align 8
  %1853 = extractvalue { ptr, i32 } %1851, 1
  store i32 %1853, ptr %6, align 4
  br label %1858

1854:                                             ; preds = %1806
  %1855 = landingpad { ptr, i32 }
          cleanup
  %1856 = extractvalue { ptr, i32 } %1855, 0
  store ptr %1856, ptr %5, align 8
  %1857 = extractvalue { ptr, i32 } %1855, 1
  store i32 %1857, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %102) #5
  br label %1858

1858:                                             ; preds = %1854, %1850
  call void @llvm.lifetime.end.p0(i64 24, ptr %102) #5
  br label %12015

1859:                                             ; preds = %1809
  %1860 = landingpad { ptr, i32 }
          cleanup
  %1861 = extractvalue { ptr, i32 } %1860, 0
  store ptr %1861, ptr %5, align 8
  %1862 = extractvalue { ptr, i32 } %1860, 1
  store i32 %1862, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %103) #5
  br label %12015

1863:                                             ; preds = %1817
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1864 unwind label %1026

1864:                                             ; preds = %1863
  call void @llvm.lifetime.start.p0(i64 1, ptr %104) #5
  store i8 0, ptr %104, align 1, !tbaa !9
  %1865 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %1866 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1865, ptr noundef nonnull align 1 dereferenceable(1) %104)
          to label %1867 unwind label %1890

1867:                                             ; preds = %1864
  call void @llvm.lifetime.end.p0(i64 1, ptr %104) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1868 unwind label %1026

1868:                                             ; preds = %1867
  call void @llvm.lifetime.start.p0(i64 24, ptr %105) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %105, i32 noundef 96)
          to label %1869 unwind label %1894

1869:                                             ; preds = %1868
  %1870 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %1871 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1870, ptr noundef nonnull align 8 dereferenceable(24) %105)
          to label %1872 unwind label %1898

1872:                                             ; preds = %1869
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %105) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %105) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %106) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %106, i32 noundef 2)
          to label %1873 unwind label %1903

1873:                                             ; preds = %1872
  %1874 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %1875 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1874, ptr noundef nonnull align 8 dereferenceable(24) %106)
          to label %1876 unwind label %1907

1876:                                             ; preds = %1873
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %106) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %106) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %107) #5
  store i8 1, ptr %107, align 1, !tbaa !9
  %1877 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %1878 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1877, ptr noundef nonnull align 1 dereferenceable(1) %107)
          to label %1879 unwind label %1912

1879:                                             ; preds = %1876
  call void @llvm.lifetime.end.p0(i64 1, ptr %107) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1880 unwind label %1026

1880:                                             ; preds = %1879
  br label %1881

1881:                                             ; preds = %1889, %1880
  %1882 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %1883 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1882)
          to label %1884 unwind label %1026

1884:                                             ; preds = %1881
  %1885 = load i8, ptr %1883, align 1, !tbaa !9, !range !11, !noundef !12
  %1886 = trunc i8 %1885 to i1
  %1887 = xor i1 %1886, true
  br i1 %1887, label %1888, label %1916

1888:                                             ; preds = %1884
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1889 unwind label %1026

1889:                                             ; preds = %1888
  br label %1881, !llvm.loop !28

1890:                                             ; preds = %1864
  %1891 = landingpad { ptr, i32 }
          cleanup
  %1892 = extractvalue { ptr, i32 } %1891, 0
  store ptr %1892, ptr %5, align 8
  %1893 = extractvalue { ptr, i32 } %1891, 1
  store i32 %1893, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %104) #5
  br label %12015

1894:                                             ; preds = %1868
  %1895 = landingpad { ptr, i32 }
          cleanup
  %1896 = extractvalue { ptr, i32 } %1895, 0
  store ptr %1896, ptr %5, align 8
  %1897 = extractvalue { ptr, i32 } %1895, 1
  store i32 %1897, ptr %6, align 4
  br label %1902

1898:                                             ; preds = %1869
  %1899 = landingpad { ptr, i32 }
          cleanup
  %1900 = extractvalue { ptr, i32 } %1899, 0
  store ptr %1900, ptr %5, align 8
  %1901 = extractvalue { ptr, i32 } %1899, 1
  store i32 %1901, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %105) #5
  br label %1902

1902:                                             ; preds = %1898, %1894
  call void @llvm.lifetime.end.p0(i64 24, ptr %105) #5
  br label %12015

1903:                                             ; preds = %1872
  %1904 = landingpad { ptr, i32 }
          cleanup
  %1905 = extractvalue { ptr, i32 } %1904, 0
  store ptr %1905, ptr %5, align 8
  %1906 = extractvalue { ptr, i32 } %1904, 1
  store i32 %1906, ptr %6, align 4
  br label %1911

1907:                                             ; preds = %1873
  %1908 = landingpad { ptr, i32 }
          cleanup
  %1909 = extractvalue { ptr, i32 } %1908, 0
  store ptr %1909, ptr %5, align 8
  %1910 = extractvalue { ptr, i32 } %1908, 1
  store i32 %1910, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %106) #5
  br label %1911

1911:                                             ; preds = %1907, %1903
  call void @llvm.lifetime.end.p0(i64 24, ptr %106) #5
  br label %12015

1912:                                             ; preds = %1876
  %1913 = landingpad { ptr, i32 }
          cleanup
  %1914 = extractvalue { ptr, i32 } %1913, 0
  store ptr %1914, ptr %5, align 8
  %1915 = extractvalue { ptr, i32 } %1913, 1
  store i32 %1915, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %107) #5
  br label %12015

1916:                                             ; preds = %1884
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1917 unwind label %1026

1917:                                             ; preds = %1916
  call void @llvm.lifetime.start.p0(i64 1, ptr %108) #5
  store i8 0, ptr %108, align 1, !tbaa !9
  %1918 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %1919 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1918, ptr noundef nonnull align 1 dereferenceable(1) %108)
          to label %1920 unwind label %1947

1920:                                             ; preds = %1917
  call void @llvm.lifetime.end.p0(i64 1, ptr %108) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1921 unwind label %1026

1921:                                             ; preds = %1920
  call void @llvm.lifetime.start.p0(i64 24, ptr %109) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %109, i32 noundef 128)
          to label %1922 unwind label %1951

1922:                                             ; preds = %1921
  %1923 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %1924 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1923, ptr noundef nonnull align 8 dereferenceable(24) %109)
          to label %1925 unwind label %1955

1925:                                             ; preds = %1922
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %109) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %109) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %110) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %110, i32 noundef 0)
          to label %1926 unwind label %1960

1926:                                             ; preds = %1925
  %1927 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %1928 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1927, ptr noundef nonnull align 8 dereferenceable(24) %110)
          to label %1929 unwind label %1964

1929:                                             ; preds = %1926
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %110) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %110) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %111) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %111, i32 noundef 2)
          to label %1930 unwind label %1969

1930:                                             ; preds = %1929
  %1931 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %1932 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1931, ptr noundef nonnull align 8 dereferenceable(24) %111)
          to label %1933 unwind label %1973

1933:                                             ; preds = %1930
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %111) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %111) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %112) #5
  store i8 1, ptr %112, align 1, !tbaa !9
  %1934 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %1935 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1934, ptr noundef nonnull align 1 dereferenceable(1) %112)
          to label %1936 unwind label %1978

1936:                                             ; preds = %1933
  call void @llvm.lifetime.end.p0(i64 1, ptr %112) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1937 unwind label %1026

1937:                                             ; preds = %1936
  br label %1938

1938:                                             ; preds = %1946, %1937
  %1939 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %1940 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1939)
          to label %1941 unwind label %1026

1941:                                             ; preds = %1938
  %1942 = load i8, ptr %1940, align 1, !tbaa !9, !range !11, !noundef !12
  %1943 = trunc i8 %1942 to i1
  %1944 = xor i1 %1943, true
  br i1 %1944, label %1945, label %1982

1945:                                             ; preds = %1941
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1946 unwind label %1026

1946:                                             ; preds = %1945
  br label %1938, !llvm.loop !29

1947:                                             ; preds = %1917
  %1948 = landingpad { ptr, i32 }
          cleanup
  %1949 = extractvalue { ptr, i32 } %1948, 0
  store ptr %1949, ptr %5, align 8
  %1950 = extractvalue { ptr, i32 } %1948, 1
  store i32 %1950, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %108) #5
  br label %12015

1951:                                             ; preds = %1921
  %1952 = landingpad { ptr, i32 }
          cleanup
  %1953 = extractvalue { ptr, i32 } %1952, 0
  store ptr %1953, ptr %5, align 8
  %1954 = extractvalue { ptr, i32 } %1952, 1
  store i32 %1954, ptr %6, align 4
  br label %1959

1955:                                             ; preds = %1922
  %1956 = landingpad { ptr, i32 }
          cleanup
  %1957 = extractvalue { ptr, i32 } %1956, 0
  store ptr %1957, ptr %5, align 8
  %1958 = extractvalue { ptr, i32 } %1956, 1
  store i32 %1958, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %109) #5
  br label %1959

1959:                                             ; preds = %1955, %1951
  call void @llvm.lifetime.end.p0(i64 24, ptr %109) #5
  br label %12015

1960:                                             ; preds = %1925
  %1961 = landingpad { ptr, i32 }
          cleanup
  %1962 = extractvalue { ptr, i32 } %1961, 0
  store ptr %1962, ptr %5, align 8
  %1963 = extractvalue { ptr, i32 } %1961, 1
  store i32 %1963, ptr %6, align 4
  br label %1968

1964:                                             ; preds = %1926
  %1965 = landingpad { ptr, i32 }
          cleanup
  %1966 = extractvalue { ptr, i32 } %1965, 0
  store ptr %1966, ptr %5, align 8
  %1967 = extractvalue { ptr, i32 } %1965, 1
  store i32 %1967, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %110) #5
  br label %1968

1968:                                             ; preds = %1964, %1960
  call void @llvm.lifetime.end.p0(i64 24, ptr %110) #5
  br label %12015

1969:                                             ; preds = %1929
  %1970 = landingpad { ptr, i32 }
          cleanup
  %1971 = extractvalue { ptr, i32 } %1970, 0
  store ptr %1971, ptr %5, align 8
  %1972 = extractvalue { ptr, i32 } %1970, 1
  store i32 %1972, ptr %6, align 4
  br label %1977

1973:                                             ; preds = %1930
  %1974 = landingpad { ptr, i32 }
          cleanup
  %1975 = extractvalue { ptr, i32 } %1974, 0
  store ptr %1975, ptr %5, align 8
  %1976 = extractvalue { ptr, i32 } %1974, 1
  store i32 %1976, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %111) #5
  br label %1977

1977:                                             ; preds = %1973, %1969
  call void @llvm.lifetime.end.p0(i64 24, ptr %111) #5
  br label %12015

1978:                                             ; preds = %1933
  %1979 = landingpad { ptr, i32 }
          cleanup
  %1980 = extractvalue { ptr, i32 } %1979, 0
  store ptr %1980, ptr %5, align 8
  %1981 = extractvalue { ptr, i32 } %1979, 1
  store i32 %1981, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %112) #5
  br label %12015

1982:                                             ; preds = %1941
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1983 unwind label %1026

1983:                                             ; preds = %1982
  call void @llvm.lifetime.start.p0(i64 1, ptr %113) #5
  store i8 0, ptr %113, align 1, !tbaa !9
  %1984 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %1985 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1984, ptr noundef nonnull align 1 dereferenceable(1) %113)
          to label %1986 unwind label %2009

1986:                                             ; preds = %1983
  call void @llvm.lifetime.end.p0(i64 1, ptr %113) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1987 unwind label %1026

1987:                                             ; preds = %1986
  call void @llvm.lifetime.start.p0(i64 24, ptr %114) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %114, i32 noundef 160)
          to label %1988 unwind label %2013

1988:                                             ; preds = %1987
  %1989 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %1990 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1989, ptr noundef nonnull align 8 dereferenceable(24) %114)
          to label %1991 unwind label %2017

1991:                                             ; preds = %1988
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %114) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %114) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %115) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %115, i32 noundef 2)
          to label %1992 unwind label %2022

1992:                                             ; preds = %1991
  %1993 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %1994 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1993, ptr noundef nonnull align 8 dereferenceable(24) %115)
          to label %1995 unwind label %2026

1995:                                             ; preds = %1992
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %115) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %115) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %116) #5
  store i8 1, ptr %116, align 1, !tbaa !9
  %1996 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %1997 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1996, ptr noundef nonnull align 1 dereferenceable(1) %116)
          to label %1998 unwind label %2031

1998:                                             ; preds = %1995
  call void @llvm.lifetime.end.p0(i64 1, ptr %116) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %1999 unwind label %1026

1999:                                             ; preds = %1998
  br label %2000

2000:                                             ; preds = %2008, %1999
  %2001 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %2002 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %2001)
          to label %2003 unwind label %1026

2003:                                             ; preds = %2000
  %2004 = load i8, ptr %2002, align 1, !tbaa !9, !range !11, !noundef !12
  %2005 = trunc i8 %2004 to i1
  %2006 = xor i1 %2005, true
  br i1 %2006, label %2007, label %2035

2007:                                             ; preds = %2003
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2008 unwind label %1026

2008:                                             ; preds = %2007
  br label %2000, !llvm.loop !30

2009:                                             ; preds = %1983
  %2010 = landingpad { ptr, i32 }
          cleanup
  %2011 = extractvalue { ptr, i32 } %2010, 0
  store ptr %2011, ptr %5, align 8
  %2012 = extractvalue { ptr, i32 } %2010, 1
  store i32 %2012, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %113) #5
  br label %12015

2013:                                             ; preds = %1987
  %2014 = landingpad { ptr, i32 }
          cleanup
  %2015 = extractvalue { ptr, i32 } %2014, 0
  store ptr %2015, ptr %5, align 8
  %2016 = extractvalue { ptr, i32 } %2014, 1
  store i32 %2016, ptr %6, align 4
  br label %2021

2017:                                             ; preds = %1988
  %2018 = landingpad { ptr, i32 }
          cleanup
  %2019 = extractvalue { ptr, i32 } %2018, 0
  store ptr %2019, ptr %5, align 8
  %2020 = extractvalue { ptr, i32 } %2018, 1
  store i32 %2020, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %114) #5
  br label %2021

2021:                                             ; preds = %2017, %2013
  call void @llvm.lifetime.end.p0(i64 24, ptr %114) #5
  br label %12015

2022:                                             ; preds = %1991
  %2023 = landingpad { ptr, i32 }
          cleanup
  %2024 = extractvalue { ptr, i32 } %2023, 0
  store ptr %2024, ptr %5, align 8
  %2025 = extractvalue { ptr, i32 } %2023, 1
  store i32 %2025, ptr %6, align 4
  br label %2030

2026:                                             ; preds = %1992
  %2027 = landingpad { ptr, i32 }
          cleanup
  %2028 = extractvalue { ptr, i32 } %2027, 0
  store ptr %2028, ptr %5, align 8
  %2029 = extractvalue { ptr, i32 } %2027, 1
  store i32 %2029, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %115) #5
  br label %2030

2030:                                             ; preds = %2026, %2022
  call void @llvm.lifetime.end.p0(i64 24, ptr %115) #5
  br label %12015

2031:                                             ; preds = %1995
  %2032 = landingpad { ptr, i32 }
          cleanup
  %2033 = extractvalue { ptr, i32 } %2032, 0
  store ptr %2033, ptr %5, align 8
  %2034 = extractvalue { ptr, i32 } %2032, 1
  store i32 %2034, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %116) #5
  br label %12015

2035:                                             ; preds = %2003
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2036 unwind label %1026

2036:                                             ; preds = %2035
  call void @llvm.lifetime.start.p0(i64 1, ptr %117) #5
  store i8 0, ptr %117, align 1, !tbaa !9
  %2037 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %2038 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2037, ptr noundef nonnull align 1 dereferenceable(1) %117)
          to label %2039 unwind label %2041

2039:                                             ; preds = %2036
  call void @llvm.lifetime.end.p0(i64 1, ptr %117) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2040 unwind label %1026

2040:                                             ; preds = %2039
  br label %2047

2041:                                             ; preds = %2036
  %2042 = landingpad { ptr, i32 }
          cleanup
  %2043 = extractvalue { ptr, i32 } %2042, 0
  store ptr %2043, ptr %5, align 8
  %2044 = extractvalue { ptr, i32 } %2042, 1
  store i32 %2044, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %117) #5
  br label %12015

2045:                                             ; preds = %869
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2046 unwind label %1026

2046:                                             ; preds = %2045
  br label %2047

2047:                                             ; preds = %2046, %2040
  %2048 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 270)
          to label %2049 unwind label %1026

2049:                                             ; preds = %2047
  %2050 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 0)
          to label %2051 unwind label %1026

2051:                                             ; preds = %2049
  br label %2052

2052:                                             ; preds = %2051
  br label %2053

2053:                                             ; preds = %2158, %2052
  br label %2054

2054:                                             ; preds = %2053
  %2055 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %2056 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2055, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %2057 unwind label %1026

2057:                                             ; preds = %2054
  %2058 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %2059 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2058, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %2060 unwind label %1026

2060:                                             ; preds = %2057
  call void @llvm.lifetime.start.p0(i64 1, ptr %118) #5
  store i8 0, ptr %118, align 1, !tbaa !9
  %2061 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %2062 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2061, ptr noundef nonnull align 1 dereferenceable(1) %118)
          to label %2063 unwind label %2082

2063:                                             ; preds = %2060
  call void @llvm.lifetime.end.p0(i64 1, ptr %118) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %119) #5
  store i8 1, ptr %119, align 1, !tbaa !9
  %2064 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %2065 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2064, ptr noundef nonnull align 1 dereferenceable(1) %119)
          to label %2066 unwind label %2086

2066:                                             ; preds = %2063
  call void @llvm.lifetime.end.p0(i64 1, ptr %119) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2067 unwind label %1026

2067:                                             ; preds = %2066
  br label %2068

2068:                                             ; preds = %2095, %2067
  br label %2069

2069:                                             ; preds = %2068
  call void @llvm.lifetime.start.p0(i64 1, ptr %120) #5
  store i8 0, ptr %120, align 1, !tbaa !9
  %2070 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %2071 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2070, ptr noundef nonnull align 1 dereferenceable(1) %120)
          to label %2072 unwind label %2090

2072:                                             ; preds = %2069
  call void @llvm.lifetime.end.p0(i64 1, ptr %120) #5
  %2073 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %2074 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %2073)
          to label %2075 unwind label %1026

2075:                                             ; preds = %2072
  %2076 = load i8, ptr %2074, align 1, !tbaa !9, !range !11, !noundef !12
  %2077 = trunc i8 %2076 to i1
  %2078 = zext i1 %2077 to i32
  %2079 = icmp eq i32 %2078, 1
  br i1 %2079, label %2080, label %2094

2080:                                             ; preds = %2075
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2081 unwind label %1026

2081:                                             ; preds = %2080
  br label %2096

2082:                                             ; preds = %2060
  %2083 = landingpad { ptr, i32 }
          cleanup
  %2084 = extractvalue { ptr, i32 } %2083, 0
  store ptr %2084, ptr %5, align 8
  %2085 = extractvalue { ptr, i32 } %2083, 1
  store i32 %2085, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %118) #5
  br label %12015

2086:                                             ; preds = %2063
  %2087 = landingpad { ptr, i32 }
          cleanup
  %2088 = extractvalue { ptr, i32 } %2087, 0
  store ptr %2088, ptr %5, align 8
  %2089 = extractvalue { ptr, i32 } %2087, 1
  store i32 %2089, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %119) #5
  br label %12015

2090:                                             ; preds = %2069
  %2091 = landingpad { ptr, i32 }
          cleanup
  %2092 = extractvalue { ptr, i32 } %2091, 0
  store ptr %2092, ptr %5, align 8
  %2093 = extractvalue { ptr, i32 } %2091, 1
  store i32 %2093, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %120) #5
  br label %12015

2094:                                             ; preds = %2075
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2095 unwind label %1026

2095:                                             ; preds = %2094
  br label %2068, !llvm.loop !31

2096:                                             ; preds = %2081
  %2097 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %2098 unwind label %1026

2098:                                             ; preds = %2096
  %2099 = add nsw i64 %2097, 1
  %2100 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %8, i64 noundef %2099)
          to label %2101 unwind label %1026

2101:                                             ; preds = %2098
  %2102 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %2103 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2102, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %2104 unwind label %1026

2104:                                             ; preds = %2101
  %2105 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %2106 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2105, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %2107 unwind label %1026

2107:                                             ; preds = %2104
  call void @llvm.lifetime.start.p0(i64 1, ptr %121) #5
  store i8 0, ptr %121, align 1, !tbaa !9
  %2108 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %2109 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2108, ptr noundef nonnull align 1 dereferenceable(1) %121)
          to label %2110 unwind label %2129

2110:                                             ; preds = %2107
  call void @llvm.lifetime.end.p0(i64 1, ptr %121) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %122) #5
  store i8 1, ptr %122, align 1, !tbaa !9
  %2111 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %2112 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2111, ptr noundef nonnull align 1 dereferenceable(1) %122)
          to label %2113 unwind label %2133

2113:                                             ; preds = %2110
  call void @llvm.lifetime.end.p0(i64 1, ptr %122) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2114 unwind label %1026

2114:                                             ; preds = %2113
  br label %2115

2115:                                             ; preds = %2142, %2114
  br label %2116

2116:                                             ; preds = %2115
  call void @llvm.lifetime.start.p0(i64 1, ptr %123) #5
  store i8 0, ptr %123, align 1, !tbaa !9
  %2117 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %2118 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2117, ptr noundef nonnull align 1 dereferenceable(1) %123)
          to label %2119 unwind label %2137

2119:                                             ; preds = %2116
  call void @llvm.lifetime.end.p0(i64 1, ptr %123) #5
  %2120 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %2121 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %2120)
          to label %2122 unwind label %1026

2122:                                             ; preds = %2119
  %2123 = load i8, ptr %2121, align 1, !tbaa !9, !range !11, !noundef !12
  %2124 = trunc i8 %2123 to i1
  %2125 = zext i1 %2124 to i32
  %2126 = icmp eq i32 %2125, 1
  br i1 %2126, label %2127, label %2141

2127:                                             ; preds = %2122
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2128 unwind label %1026

2128:                                             ; preds = %2127
  br label %2143

2129:                                             ; preds = %2107
  %2130 = landingpad { ptr, i32 }
          cleanup
  %2131 = extractvalue { ptr, i32 } %2130, 0
  store ptr %2131, ptr %5, align 8
  %2132 = extractvalue { ptr, i32 } %2130, 1
  store i32 %2132, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %121) #5
  br label %12015

2133:                                             ; preds = %2110
  %2134 = landingpad { ptr, i32 }
          cleanup
  %2135 = extractvalue { ptr, i32 } %2134, 0
  store ptr %2135, ptr %5, align 8
  %2136 = extractvalue { ptr, i32 } %2134, 1
  store i32 %2136, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %122) #5
  br label %12015

2137:                                             ; preds = %2116
  %2138 = landingpad { ptr, i32 }
          cleanup
  %2139 = extractvalue { ptr, i32 } %2138, 0
  store ptr %2139, ptr %5, align 8
  %2140 = extractvalue { ptr, i32 } %2138, 1
  store i32 %2140, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %123) #5
  br label %12015

2141:                                             ; preds = %2122
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2142 unwind label %1026

2142:                                             ; preds = %2141
  br label %2115, !llvm.loop !32

2143:                                             ; preds = %2128
  %2144 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %2145 unwind label %1026

2145:                                             ; preds = %2143
  %2146 = add nsw i64 %2144, 15
  %2147 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %8, i64 noundef %2146)
          to label %2148 unwind label %1026

2148:                                             ; preds = %2145
  %2149 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 8, i32 noundef 4)
          to label %2150 unwind label %1026

2150:                                             ; preds = %2148
  %2151 = invoke noundef i64 @_ZNK5sc_dt15sc_int_subref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(28) %2149)
          to label %2152 unwind label %1026

2152:                                             ; preds = %2150
  %2153 = icmp uge i64 %2151, -4
  br i1 %2153, label %2154, label %2156

2154:                                             ; preds = %2152
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2155 unwind label %1026

2155:                                             ; preds = %2154
  br label %2159

2156:                                             ; preds = %2152
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2157 unwind label %1026

2157:                                             ; preds = %2156
  br label %2158

2158:                                             ; preds = %2157
  br label %2053, !llvm.loop !33

2159:                                             ; preds = %2155
  %2160 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 514)
          to label %2161 unwind label %1026

2161:                                             ; preds = %2159
  store i8 0, ptr %14, align 1, !tbaa !9
  %2162 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %19, i32 noundef 5)
          to label %2163 unwind label %1026

2163:                                             ; preds = %2161
  call void @llvm.lifetime.start.p0(i64 24, ptr %124) #5
  %2164 = load i8, ptr %14, align 1, !tbaa !9, !range !11, !noundef !12
  %2165 = trunc i8 %2164 to i1
  %2166 = zext i1 %2165 to i32
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %124, i32 noundef %2166)
          to label %2167 unwind label %2210

2167:                                             ; preds = %2163
  call void @llvm.lifetime.start.p0(i64 24, ptr %125) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %125, i32 noundef 0)
          to label %2168 unwind label %2214

2168:                                             ; preds = %2167
  %2169 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %124, ptr noundef nonnull align 8 dereferenceable(8) %125)
          to label %2170 unwind label %2218

2170:                                             ; preds = %2168
  %2171 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %19, i32 noundef 5, i32 noundef 0)
          to label %2172 unwind label %2218

2172:                                             ; preds = %2170
  %2173 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %2169, ptr noundef nonnull align 8 dereferenceable(8) %2171)
          to label %2174 unwind label %2218

2174:                                             ; preds = %2172
  call void @llvm.lifetime.start.p0(i64 24, ptr %126) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %126, i32 noundef 0)
          to label %2175 unwind label %2222

2175:                                             ; preds = %2174
  %2176 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %2173, ptr noundef nonnull align 8 dereferenceable(8) %126)
          to label %2177 unwind label %2226

2177:                                             ; preds = %2175
  %2178 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 1 dereferenceable(1) %2176)
          to label %2179 unwind label %2226

2179:                                             ; preds = %2177
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %126) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %126) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %125) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %125) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %124) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %124) #5
  br label %2180

2180:                                             ; preds = %2179
  br label %2181

2181:                                             ; preds = %2300, %2180
  br label %2182

2182:                                             ; preds = %2181
  %2183 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %2184 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2183, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %2185 unwind label %1026

2185:                                             ; preds = %2182
  %2186 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %2187 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2186, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %2188 unwind label %1026

2188:                                             ; preds = %2185
  call void @llvm.lifetime.start.p0(i64 1, ptr %127) #5
  store i8 0, ptr %127, align 1, !tbaa !9
  %2189 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %2190 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2189, ptr noundef nonnull align 1 dereferenceable(1) %127)
          to label %2191 unwind label %2234

2191:                                             ; preds = %2188
  call void @llvm.lifetime.end.p0(i64 1, ptr %127) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %128) #5
  store i8 1, ptr %128, align 1, !tbaa !9
  %2192 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %2193 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2192, ptr noundef nonnull align 1 dereferenceable(1) %128)
          to label %2194 unwind label %2238

2194:                                             ; preds = %2191
  call void @llvm.lifetime.end.p0(i64 1, ptr %128) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2195 unwind label %1026

2195:                                             ; preds = %2194
  br label %2196

2196:                                             ; preds = %2247, %2195
  br label %2197

2197:                                             ; preds = %2196
  call void @llvm.lifetime.start.p0(i64 1, ptr %129) #5
  store i8 0, ptr %129, align 1, !tbaa !9
  %2198 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %2199 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2198, ptr noundef nonnull align 1 dereferenceable(1) %129)
          to label %2200 unwind label %2242

2200:                                             ; preds = %2197
  call void @llvm.lifetime.end.p0(i64 1, ptr %129) #5
  %2201 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %2202 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %2201)
          to label %2203 unwind label %1026

2203:                                             ; preds = %2200
  %2204 = load i8, ptr %2202, align 1, !tbaa !9, !range !11, !noundef !12
  %2205 = trunc i8 %2204 to i1
  %2206 = zext i1 %2205 to i32
  %2207 = icmp eq i32 %2206, 1
  br i1 %2207, label %2208, label %2246

2208:                                             ; preds = %2203
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2209 unwind label %1026

2209:                                             ; preds = %2208
  br label %2248

2210:                                             ; preds = %2163
  %2211 = landingpad { ptr, i32 }
          cleanup
  %2212 = extractvalue { ptr, i32 } %2211, 0
  store ptr %2212, ptr %5, align 8
  %2213 = extractvalue { ptr, i32 } %2211, 1
  store i32 %2213, ptr %6, align 4
  br label %2233

2214:                                             ; preds = %2167
  %2215 = landingpad { ptr, i32 }
          cleanup
  %2216 = extractvalue { ptr, i32 } %2215, 0
  store ptr %2216, ptr %5, align 8
  %2217 = extractvalue { ptr, i32 } %2215, 1
  store i32 %2217, ptr %6, align 4
  br label %2232

2218:                                             ; preds = %2172, %2170, %2168
  %2219 = landingpad { ptr, i32 }
          cleanup
  %2220 = extractvalue { ptr, i32 } %2219, 0
  store ptr %2220, ptr %5, align 8
  %2221 = extractvalue { ptr, i32 } %2219, 1
  store i32 %2221, ptr %6, align 4
  br label %2231

2222:                                             ; preds = %2174
  %2223 = landingpad { ptr, i32 }
          cleanup
  %2224 = extractvalue { ptr, i32 } %2223, 0
  store ptr %2224, ptr %5, align 8
  %2225 = extractvalue { ptr, i32 } %2223, 1
  store i32 %2225, ptr %6, align 4
  br label %2230

2226:                                             ; preds = %2177, %2175
  %2227 = landingpad { ptr, i32 }
          cleanup
  %2228 = extractvalue { ptr, i32 } %2227, 0
  store ptr %2228, ptr %5, align 8
  %2229 = extractvalue { ptr, i32 } %2227, 1
  store i32 %2229, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %126) #5
  br label %2230

2230:                                             ; preds = %2226, %2222
  call void @llvm.lifetime.end.p0(i64 24, ptr %126) #5
  br label %2231

2231:                                             ; preds = %2230, %2218
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %125) #5
  br label %2232

2232:                                             ; preds = %2231, %2214
  call void @llvm.lifetime.end.p0(i64 24, ptr %125) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %124) #5
  br label %2233

2233:                                             ; preds = %2232, %2210
  call void @llvm.lifetime.end.p0(i64 24, ptr %124) #5
  br label %12015

2234:                                             ; preds = %2188
  %2235 = landingpad { ptr, i32 }
          cleanup
  %2236 = extractvalue { ptr, i32 } %2235, 0
  store ptr %2236, ptr %5, align 8
  %2237 = extractvalue { ptr, i32 } %2235, 1
  store i32 %2237, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %127) #5
  br label %12015

2238:                                             ; preds = %2191
  %2239 = landingpad { ptr, i32 }
          cleanup
  %2240 = extractvalue { ptr, i32 } %2239, 0
  store ptr %2240, ptr %5, align 8
  %2241 = extractvalue { ptr, i32 } %2239, 1
  store i32 %2241, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %128) #5
  br label %12015

2242:                                             ; preds = %2197
  %2243 = landingpad { ptr, i32 }
          cleanup
  %2244 = extractvalue { ptr, i32 } %2243, 0
  store ptr %2244, ptr %5, align 8
  %2245 = extractvalue { ptr, i32 } %2243, 1
  store i32 %2245, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %129) #5
  br label %12015

2246:                                             ; preds = %2203
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2247 unwind label %1026

2247:                                             ; preds = %2246
  br label %2196, !llvm.loop !34

2248:                                             ; preds = %2209
  %2249 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %2250 unwind label %1026

2250:                                             ; preds = %2248
  %2251 = add nsw i64 %2249, 128
  %2252 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %8, i64 noundef %2251)
          to label %2253 unwind label %1026

2253:                                             ; preds = %2250
  %2254 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 13)
          to label %2255 unwind label %1026

2255:                                             ; preds = %2253
  %2256 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %2254)
          to label %2257 unwind label %1026

2257:                                             ; preds = %2255
  %2258 = icmp ne i64 %2256, 0
  %2259 = zext i1 %2258 to i32
  %2260 = icmp eq i32 %2259, 1
  br i1 %2260, label %2261, label %2263

2261:                                             ; preds = %2257
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2262 unwind label %1026

2262:                                             ; preds = %2261
  br label %2325

2263:                                             ; preds = %2257
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2264 unwind label %1026

2264:                                             ; preds = %2263
  br label %2265

2265:                                             ; preds = %2264
  %2266 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %19)
          to label %2267 unwind label %1026

2267:                                             ; preds = %2265
  %2268 = add nsw i64 %2266, 1
  %2269 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %19, i64 noundef %2268)
          to label %2270 unwind label %1026

2270:                                             ; preds = %2267
  %2271 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %19, i32 noundef 6)
          to label %2272 unwind label %1026

2272:                                             ; preds = %2270
  %2273 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %2271)
          to label %2274 unwind label %1026

2274:                                             ; preds = %2272
  %2275 = icmp ne i64 %2273, 0
  %2276 = zext i1 %2275 to i32
  %2277 = icmp eq i32 %2276, 1
  br i1 %2277, label %2278, label %2281

2278:                                             ; preds = %2274
  %2279 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %19, i32 noundef 0)
          to label %2280 unwind label %1026

2280:                                             ; preds = %2278
  br label %2284

2281:                                             ; preds = %2274
  %2282 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %19, ptr noundef nonnull align 8 dereferenceable(24) %19)
          to label %2283 unwind label %1026

2283:                                             ; preds = %2281
  br label %2284

2284:                                             ; preds = %2283, %2280
  call void @llvm.lifetime.start.p0(i64 24, ptr %130) #5
  %2285 = load i8, ptr %14, align 1, !tbaa !9, !range !11, !noundef !12
  %2286 = trunc i8 %2285 to i1
  %2287 = zext i1 %2286 to i32
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %130, i32 noundef %2287)
          to label %2288 unwind label %2301

2288:                                             ; preds = %2284
  call void @llvm.lifetime.start.p0(i64 24, ptr %131) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %131, i32 noundef 0)
          to label %2289 unwind label %2305

2289:                                             ; preds = %2288
  %2290 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %130, ptr noundef nonnull align 8 dereferenceable(8) %131)
          to label %2291 unwind label %2309

2291:                                             ; preds = %2289
  %2292 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %19, i32 noundef 5, i32 noundef 0)
          to label %2293 unwind label %2309

2293:                                             ; preds = %2291
  %2294 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %2290, ptr noundef nonnull align 8 dereferenceable(8) %2292)
          to label %2295 unwind label %2309

2295:                                             ; preds = %2293
  call void @llvm.lifetime.start.p0(i64 24, ptr %132) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %132, i32 noundef 0)
          to label %2296 unwind label %2313

2296:                                             ; preds = %2295
  %2297 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %2294, ptr noundef nonnull align 8 dereferenceable(8) %132)
          to label %2298 unwind label %2317

2298:                                             ; preds = %2296
  %2299 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 1 dereferenceable(1) %2297)
          to label %2300 unwind label %2317

2300:                                             ; preds = %2298
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %132) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %132) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %131) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %131) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %130) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %130) #5
  br label %2181, !llvm.loop !35

2301:                                             ; preds = %2284
  %2302 = landingpad { ptr, i32 }
          cleanup
  %2303 = extractvalue { ptr, i32 } %2302, 0
  store ptr %2303, ptr %5, align 8
  %2304 = extractvalue { ptr, i32 } %2302, 1
  store i32 %2304, ptr %6, align 4
  br label %2324

2305:                                             ; preds = %2288
  %2306 = landingpad { ptr, i32 }
          cleanup
  %2307 = extractvalue { ptr, i32 } %2306, 0
  store ptr %2307, ptr %5, align 8
  %2308 = extractvalue { ptr, i32 } %2306, 1
  store i32 %2308, ptr %6, align 4
  br label %2323

2309:                                             ; preds = %2293, %2291, %2289
  %2310 = landingpad { ptr, i32 }
          cleanup
  %2311 = extractvalue { ptr, i32 } %2310, 0
  store ptr %2311, ptr %5, align 8
  %2312 = extractvalue { ptr, i32 } %2310, 1
  store i32 %2312, ptr %6, align 4
  br label %2322

2313:                                             ; preds = %2295
  %2314 = landingpad { ptr, i32 }
          cleanup
  %2315 = extractvalue { ptr, i32 } %2314, 0
  store ptr %2315, ptr %5, align 8
  %2316 = extractvalue { ptr, i32 } %2314, 1
  store i32 %2316, ptr %6, align 4
  br label %2321

2317:                                             ; preds = %2298, %2296
  %2318 = landingpad { ptr, i32 }
          cleanup
  %2319 = extractvalue { ptr, i32 } %2318, 0
  store ptr %2319, ptr %5, align 8
  %2320 = extractvalue { ptr, i32 } %2318, 1
  store i32 %2320, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %132) #5
  br label %2321

2321:                                             ; preds = %2317, %2313
  call void @llvm.lifetime.end.p0(i64 24, ptr %132) #5
  br label %2322

2322:                                             ; preds = %2321, %2309
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %131) #5
  br label %2323

2323:                                             ; preds = %2322, %2305
  call void @llvm.lifetime.end.p0(i64 24, ptr %131) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %130) #5
  br label %2324

2324:                                             ; preds = %2323, %2301
  call void @llvm.lifetime.end.p0(i64 24, ptr %130) #5
  br label %12015

2325:                                             ; preds = %2262
  %2326 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef -8190)
          to label %2327 unwind label %1026

2327:                                             ; preds = %2325
  %2328 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 63)
          to label %2329 unwind label %1026

2329:                                             ; preds = %2327
  %2330 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %2331 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2330, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %2332 unwind label %1026

2332:                                             ; preds = %2329
  %2333 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %2334 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2333, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %2335 unwind label %1026

2335:                                             ; preds = %2332
  call void @llvm.lifetime.start.p0(i64 1, ptr %133) #5
  store i8 0, ptr %133, align 1, !tbaa !9
  %2336 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %2337 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2336, ptr noundef nonnull align 1 dereferenceable(1) %133)
          to label %2338 unwind label %2355

2338:                                             ; preds = %2335
  call void @llvm.lifetime.end.p0(i64 1, ptr %133) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %134) #5
  store i8 1, ptr %134, align 1, !tbaa !9
  %2339 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %2340 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2339, ptr noundef nonnull align 1 dereferenceable(1) %134)
          to label %2341 unwind label %2359

2341:                                             ; preds = %2338
  call void @llvm.lifetime.end.p0(i64 1, ptr %134) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2342 unwind label %1026

2342:                                             ; preds = %2341
  br label %2343

2343:                                             ; preds = %2368, %2342
  br label %2344

2344:                                             ; preds = %2343
  call void @llvm.lifetime.start.p0(i64 1, ptr %135) #5
  store i8 0, ptr %135, align 1, !tbaa !9
  %2345 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %2346 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2345, ptr noundef nonnull align 1 dereferenceable(1) %135)
          to label %2347 unwind label %2363

2347:                                             ; preds = %2344
  call void @llvm.lifetime.end.p0(i64 1, ptr %135) #5
  %2348 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %2349 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %2348)
          to label %2350 unwind label %1026

2350:                                             ; preds = %2347
  %2351 = load i8, ptr %2349, align 1, !tbaa !9, !range !11, !noundef !12
  %2352 = trunc i8 %2351 to i1
  br i1 %2352, label %2353, label %2367

2353:                                             ; preds = %2350
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2354 unwind label %1026

2354:                                             ; preds = %2353
  br label %2369

2355:                                             ; preds = %2335
  %2356 = landingpad { ptr, i32 }
          cleanup
  %2357 = extractvalue { ptr, i32 } %2356, 0
  store ptr %2357, ptr %5, align 8
  %2358 = extractvalue { ptr, i32 } %2356, 1
  store i32 %2358, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %133) #5
  br label %12015

2359:                                             ; preds = %2338
  %2360 = landingpad { ptr, i32 }
          cleanup
  %2361 = extractvalue { ptr, i32 } %2360, 0
  store ptr %2361, ptr %5, align 8
  %2362 = extractvalue { ptr, i32 } %2360, 1
  store i32 %2362, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %134) #5
  br label %12015

2363:                                             ; preds = %2344
  %2364 = landingpad { ptr, i32 }
          cleanup
  %2365 = extractvalue { ptr, i32 } %2364, 0
  store ptr %2365, ptr %5, align 8
  %2366 = extractvalue { ptr, i32 } %2364, 1
  store i32 %2366, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %135) #5
  br label %12015

2367:                                             ; preds = %2350
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2368 unwind label %1026

2368:                                             ; preds = %2367
  br label %2343, !llvm.loop !36

2369:                                             ; preds = %2354
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2370 unwind label %1026

2370:                                             ; preds = %2369
  br label %2371

2371:                                             ; preds = %2370
  br label %2372

2372:                                             ; preds = %12014, %2371
  br label %2373

2373:                                             ; preds = %2372
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2374 unwind label %1026

2374:                                             ; preds = %2373
  br label %2375

2375:                                             ; preds = %2374
  br label %2376

2376:                                             ; preds = %2375
  %2377 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %32, i32 noundef -1)
          to label %2378 unwind label %1026

2378:                                             ; preds = %2376
  %2379 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 0)
          to label %2380 unwind label %1026

2380:                                             ; preds = %2378
  store i8 0, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2381 unwind label %1026

2381:                                             ; preds = %2380
  call void @llvm.lifetime.start.p0(i64 24, ptr %136) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %136, i32 noundef 256)
          to label %2382 unwind label %2406

2382:                                             ; preds = %2381
  %2383 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %2384 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2383, ptr noundef nonnull align 8 dereferenceable(24) %136)
          to label %2385 unwind label %2410

2385:                                             ; preds = %2382
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %136) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %136) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %137) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %137, i32 noundef 0)
          to label %2386 unwind label %2415

2386:                                             ; preds = %2385
  %2387 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %2388 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2387, ptr noundef nonnull align 8 dereferenceable(24) %137)
          to label %2389 unwind label %2419

2389:                                             ; preds = %2386
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %137) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %137) #5
  %2390 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %2391 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2390, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %2392 unwind label %1026

2392:                                             ; preds = %2389
  call void @llvm.lifetime.start.p0(i64 1, ptr %138) #5
  store i8 1, ptr %138, align 1, !tbaa !9
  %2393 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %2394 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2393, ptr noundef nonnull align 1 dereferenceable(1) %138)
          to label %2395 unwind label %2424

2395:                                             ; preds = %2392
  call void @llvm.lifetime.end.p0(i64 1, ptr %138) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2396 unwind label %1026

2396:                                             ; preds = %2395
  br label %2397

2397:                                             ; preds = %2405, %2396
  %2398 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %2399 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %2398)
          to label %2400 unwind label %1026

2400:                                             ; preds = %2397
  %2401 = load i8, ptr %2399, align 1, !tbaa !9, !range !11, !noundef !12
  %2402 = trunc i8 %2401 to i1
  %2403 = xor i1 %2402, true
  br i1 %2403, label %2404, label %2428

2404:                                             ; preds = %2400
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2405 unwind label %1026

2405:                                             ; preds = %2404
  br label %2397, !llvm.loop !37

2406:                                             ; preds = %2381
  %2407 = landingpad { ptr, i32 }
          cleanup
  %2408 = extractvalue { ptr, i32 } %2407, 0
  store ptr %2408, ptr %5, align 8
  %2409 = extractvalue { ptr, i32 } %2407, 1
  store i32 %2409, ptr %6, align 4
  br label %2414

2410:                                             ; preds = %2382
  %2411 = landingpad { ptr, i32 }
          cleanup
  %2412 = extractvalue { ptr, i32 } %2411, 0
  store ptr %2412, ptr %5, align 8
  %2413 = extractvalue { ptr, i32 } %2411, 1
  store i32 %2413, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %136) #5
  br label %2414

2414:                                             ; preds = %2410, %2406
  call void @llvm.lifetime.end.p0(i64 24, ptr %136) #5
  br label %12015

2415:                                             ; preds = %2385
  %2416 = landingpad { ptr, i32 }
          cleanup
  %2417 = extractvalue { ptr, i32 } %2416, 0
  store ptr %2417, ptr %5, align 8
  %2418 = extractvalue { ptr, i32 } %2416, 1
  store i32 %2418, ptr %6, align 4
  br label %2423

2419:                                             ; preds = %2386
  %2420 = landingpad { ptr, i32 }
          cleanup
  %2421 = extractvalue { ptr, i32 } %2420, 0
  store ptr %2421, ptr %5, align 8
  %2422 = extractvalue { ptr, i32 } %2420, 1
  store i32 %2422, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %137) #5
  br label %2423

2423:                                             ; preds = %2419, %2415
  call void @llvm.lifetime.end.p0(i64 24, ptr %137) #5
  br label %12015

2424:                                             ; preds = %2392
  %2425 = landingpad { ptr, i32 }
          cleanup
  %2426 = extractvalue { ptr, i32 } %2425, 0
  store ptr %2426, ptr %5, align 8
  %2427 = extractvalue { ptr, i32 } %2425, 1
  store i32 %2427, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %138) #5
  br label %12015

2428:                                             ; preds = %2400
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2429 unwind label %1026

2429:                                             ; preds = %2428
  call void @llvm.lifetime.start.p0(i64 1, ptr %139) #5
  store i8 0, ptr %139, align 1, !tbaa !9
  %2430 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %2431 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2430, ptr noundef nonnull align 1 dereferenceable(1) %139)
          to label %2432 unwind label %2490

2432:                                             ; preds = %2429
  call void @llvm.lifetime.end.p0(i64 1, ptr %139) #5
  %2433 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 8
  %2434 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi14EEEEcvRKS3_Ev(ptr noundef nonnull align 8 dereferenceable(168) %2433)
          to label %2435 unwind label %1026

2435:                                             ; preds = %2432
  %2436 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 13, i32 noundef 0)
          to label %2437 unwind label %1026

2437:                                             ; preds = %2435
  %2438 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt13sc_int_subrefaSERKNS_11sc_int_baseE(ptr noundef nonnull align 8 dereferenceable(28) %2436, ptr noundef nonnull align 8 dereferenceable(24) %2434)
          to label %2439 unwind label %1026

2439:                                             ; preds = %2437
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2440 unwind label %1026

2440:                                             ; preds = %2439
  %2441 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 13, i32 noundef 7)
          to label %2442 unwind label %1026

2442:                                             ; preds = %2440
  %2443 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %27, ptr noundef nonnull align 8 dereferenceable(28) %2441)
          to label %2444 unwind label %1026

2444:                                             ; preds = %2442
  %2445 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %27, i32 noundef 6, i32 noundef 5)
          to label %2446 unwind label %1026

2446:                                             ; preds = %2444
  %2447 = invoke noundef i64 @_ZNK5sc_dt15sc_int_subref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(28) %2445)
          to label %2448 unwind label %1026

2448:                                             ; preds = %2446
  %2449 = icmp eq i64 %2447, -1
  br i1 %2449, label %2450, label %2534

2450:                                             ; preds = %2448
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2451 unwind label %1026

2451:                                             ; preds = %2450
  call void @llvm.lifetime.start.p0(i64 1, ptr %140) #5
  store i8 1, ptr %140, align 1, !tbaa !9
  %2452 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 17
  %2453 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2452, ptr noundef nonnull align 1 dereferenceable(1) %140)
          to label %2454 unwind label %2494

2454:                                             ; preds = %2451
  call void @llvm.lifetime.end.p0(i64 1, ptr %140) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %141) #5
  store i8 1, ptr %141, align 1, !tbaa !9
  %2455 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 18
  %2456 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2455, ptr noundef nonnull align 1 dereferenceable(1) %141)
          to label %2457 unwind label %2498

2457:                                             ; preds = %2454
  call void @llvm.lifetime.end.p0(i64 1, ptr %141) #5
  %2458 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 22)
          to label %2459 unwind label %1026

2459:                                             ; preds = %2457
  %2460 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %2461 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2460, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %2462 unwind label %1026

2462:                                             ; preds = %2459
  %2463 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %2464 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2463, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %2465 unwind label %1026

2465:                                             ; preds = %2462
  call void @llvm.lifetime.start.p0(i64 1, ptr %142) #5
  store i8 1, ptr %142, align 1, !tbaa !9
  %2466 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %2467 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2466, ptr noundef nonnull align 1 dereferenceable(1) %142)
          to label %2468 unwind label %2502

2468:                                             ; preds = %2465
  call void @llvm.lifetime.end.p0(i64 1, ptr %142) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %143) #5
  store i8 1, ptr %143, align 1, !tbaa !9
  %2469 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %2470 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2469, ptr noundef nonnull align 1 dereferenceable(1) %143)
          to label %2471 unwind label %2506

2471:                                             ; preds = %2468
  call void @llvm.lifetime.end.p0(i64 1, ptr %143) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2472 unwind label %1026

2472:                                             ; preds = %2471
  br label %2473

2473:                                             ; preds = %2515, %2472
  br label %2474

2474:                                             ; preds = %2473
  %2475 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %2476 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %2475)
          to label %2477 unwind label %1026

2477:                                             ; preds = %2474
  %2478 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %2476)
          to label %2479 unwind label %1026

2479:                                             ; preds = %2477
  call void @llvm.lifetime.start.p0(i64 1, ptr %144) #5
  store i8 0, ptr %144, align 1, !tbaa !9
  %2480 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %2481 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2480, ptr noundef nonnull align 1 dereferenceable(1) %144)
          to label %2482 unwind label %2510

2482:                                             ; preds = %2479
  call void @llvm.lifetime.end.p0(i64 1, ptr %144) #5
  %2483 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %2484 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %2483)
          to label %2485 unwind label %1026

2485:                                             ; preds = %2482
  %2486 = load i8, ptr %2484, align 1, !tbaa !9, !range !11, !noundef !12
  %2487 = trunc i8 %2486 to i1
  br i1 %2487, label %2488, label %2514

2488:                                             ; preds = %2485
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2489 unwind label %1026

2489:                                             ; preds = %2488
  br label %2516

2490:                                             ; preds = %2429
  %2491 = landingpad { ptr, i32 }
          cleanup
  %2492 = extractvalue { ptr, i32 } %2491, 0
  store ptr %2492, ptr %5, align 8
  %2493 = extractvalue { ptr, i32 } %2491, 1
  store i32 %2493, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %139) #5
  br label %12015

2494:                                             ; preds = %2451
  %2495 = landingpad { ptr, i32 }
          cleanup
  %2496 = extractvalue { ptr, i32 } %2495, 0
  store ptr %2496, ptr %5, align 8
  %2497 = extractvalue { ptr, i32 } %2495, 1
  store i32 %2497, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %140) #5
  br label %12015

2498:                                             ; preds = %2454
  %2499 = landingpad { ptr, i32 }
          cleanup
  %2500 = extractvalue { ptr, i32 } %2499, 0
  store ptr %2500, ptr %5, align 8
  %2501 = extractvalue { ptr, i32 } %2499, 1
  store i32 %2501, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %141) #5
  br label %12015

2502:                                             ; preds = %2465
  %2503 = landingpad { ptr, i32 }
          cleanup
  %2504 = extractvalue { ptr, i32 } %2503, 0
  store ptr %2504, ptr %5, align 8
  %2505 = extractvalue { ptr, i32 } %2503, 1
  store i32 %2505, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %142) #5
  br label %12015

2506:                                             ; preds = %2468
  %2507 = landingpad { ptr, i32 }
          cleanup
  %2508 = extractvalue { ptr, i32 } %2507, 0
  store ptr %2508, ptr %5, align 8
  %2509 = extractvalue { ptr, i32 } %2507, 1
  store i32 %2509, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %143) #5
  br label %12015

2510:                                             ; preds = %2479
  %2511 = landingpad { ptr, i32 }
          cleanup
  %2512 = extractvalue { ptr, i32 } %2511, 0
  store ptr %2512, ptr %5, align 8
  %2513 = extractvalue { ptr, i32 } %2511, 1
  store i32 %2513, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %144) #5
  br label %12015

2514:                                             ; preds = %2485
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2515 unwind label %1026

2515:                                             ; preds = %2514
  br label %2473, !llvm.loop !38

2516:                                             ; preds = %2489
  %2517 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 7, i32 noundef 0)
          to label %2518 unwind label %1026

2518:                                             ; preds = %2516
  %2519 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %13, ptr noundef nonnull align 8 dereferenceable(28) %2517)
          to label %2520 unwind label %1026

2520:                                             ; preds = %2518
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2521 unwind label %1026

2521:                                             ; preds = %2520
  br label %2522

2522:                                             ; preds = %2532, %2521
  %2523 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %13)
          to label %2524 unwind label %1026

2524:                                             ; preds = %2522
  %2525 = icmp ne i64 %2523, 0
  br i1 %2525, label %2526, label %2533

2526:                                             ; preds = %2524
  %2527 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %13)
          to label %2528 unwind label %1026

2528:                                             ; preds = %2526
  %2529 = sub nsw i64 %2527, 1
  %2530 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %2529)
          to label %2531 unwind label %1026

2531:                                             ; preds = %2528
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2532 unwind label %1026

2532:                                             ; preds = %2531
  br label %2522, !llvm.loop !39

2533:                                             ; preds = %2524
  br label %11915

2534:                                             ; preds = %2448
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2535 unwind label %1026

2535:                                             ; preds = %2534
  br label %2536

2536:                                             ; preds = %2535
  call void @llvm.lifetime.start.p0(i64 24, ptr %145) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %145, i32 noundef 0)
          to label %2537 unwind label %2572

2537:                                             ; preds = %2536
  %2538 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %145)
          to label %2539 unwind label %2576

2539:                                             ; preds = %2537
  %2540 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %2538)
          to label %2541 unwind label %2576

2541:                                             ; preds = %2539
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %145) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %145) #5
  %2542 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %2543 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2542, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %2544 unwind label %1026

2544:                                             ; preds = %2541
  %2545 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %2546 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2545, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %2547 unwind label %1026

2547:                                             ; preds = %2544
  call void @llvm.lifetime.start.p0(i64 1, ptr %146) #5
  store i8 1, ptr %146, align 1, !tbaa !9
  %2548 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %2549 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2548, ptr noundef nonnull align 1 dereferenceable(1) %146)
          to label %2550 unwind label %2581

2550:                                             ; preds = %2547
  call void @llvm.lifetime.end.p0(i64 1, ptr %146) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %147) #5
  store i8 1, ptr %147, align 1, !tbaa !9
  %2551 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %2552 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2551, ptr noundef nonnull align 1 dereferenceable(1) %147)
          to label %2553 unwind label %2585

2553:                                             ; preds = %2550
  call void @llvm.lifetime.end.p0(i64 1, ptr %147) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2554 unwind label %1026

2554:                                             ; preds = %2553
  br label %2555

2555:                                             ; preds = %2594, %2554
  br label %2556

2556:                                             ; preds = %2555
  %2557 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %2558 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %2557)
          to label %2559 unwind label %1026

2559:                                             ; preds = %2556
  %2560 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %2558)
          to label %2561 unwind label %1026

2561:                                             ; preds = %2559
  call void @llvm.lifetime.start.p0(i64 1, ptr %148) #5
  store i8 0, ptr %148, align 1, !tbaa !9
  %2562 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %2563 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2562, ptr noundef nonnull align 1 dereferenceable(1) %148)
          to label %2564 unwind label %2589

2564:                                             ; preds = %2561
  call void @llvm.lifetime.end.p0(i64 1, ptr %148) #5
  %2565 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %2566 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %2565)
          to label %2567 unwind label %1026

2567:                                             ; preds = %2564
  %2568 = load i8, ptr %2566, align 1, !tbaa !9, !range !11, !noundef !12
  %2569 = trunc i8 %2568 to i1
  br i1 %2569, label %2570, label %2593

2570:                                             ; preds = %2567
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2571 unwind label %1026

2571:                                             ; preds = %2570
  br label %2595

2572:                                             ; preds = %2536
  %2573 = landingpad { ptr, i32 }
          cleanup
  %2574 = extractvalue { ptr, i32 } %2573, 0
  store ptr %2574, ptr %5, align 8
  %2575 = extractvalue { ptr, i32 } %2573, 1
  store i32 %2575, ptr %6, align 4
  br label %2580

2576:                                             ; preds = %2539, %2537
  %2577 = landingpad { ptr, i32 }
          cleanup
  %2578 = extractvalue { ptr, i32 } %2577, 0
  store ptr %2578, ptr %5, align 8
  %2579 = extractvalue { ptr, i32 } %2577, 1
  store i32 %2579, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %145) #5
  br label %2580

2580:                                             ; preds = %2576, %2572
  call void @llvm.lifetime.end.p0(i64 24, ptr %145) #5
  br label %12015

2581:                                             ; preds = %2547
  %2582 = landingpad { ptr, i32 }
          cleanup
  %2583 = extractvalue { ptr, i32 } %2582, 0
  store ptr %2583, ptr %5, align 8
  %2584 = extractvalue { ptr, i32 } %2582, 1
  store i32 %2584, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %146) #5
  br label %12015

2585:                                             ; preds = %2550
  %2586 = landingpad { ptr, i32 }
          cleanup
  %2587 = extractvalue { ptr, i32 } %2586, 0
  store ptr %2587, ptr %5, align 8
  %2588 = extractvalue { ptr, i32 } %2586, 1
  store i32 %2588, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %147) #5
  br label %12015

2589:                                             ; preds = %2561
  %2590 = landingpad { ptr, i32 }
          cleanup
  %2591 = extractvalue { ptr, i32 } %2590, 0
  store ptr %2591, ptr %5, align 8
  %2592 = extractvalue { ptr, i32 } %2590, 1
  store i32 %2592, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %148) #5
  br label %12015

2593:                                             ; preds = %2567
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2594 unwind label %1026

2594:                                             ; preds = %2593
  br label %2555, !llvm.loop !40

2595:                                             ; preds = %2571
  call void @llvm.lifetime.start.p0(i64 32, ptr %149) #5
  %2596 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 4, i32 noundef 0)
          to label %2597 unwind label %2628

2597:                                             ; preds = %2595
  %2598 = invoke noundef i64 @_ZNK5sc_dt15sc_int_subref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(28) %2596)
          to label %2599 unwind label %2628

2599:                                             ; preds = %2597
  %2600 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 11
  %2601 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %2600)
          to label %2602 unwind label %2628

2602:                                             ; preds = %2599
  %2603 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %2601, i32 noundef 1)
          to label %2604 unwind label %2628

2604:                                             ; preds = %2602
  call void @llvm.lifetime.start.p0(i64 24, ptr %150) #5
  invoke void @_ZN5sc_dt6sc_intILi4EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %150, i32 noundef 0)
          to label %2605 unwind label %2632

2605:                                             ; preds = %2604
  %2606 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %2603, ptr noundef nonnull align 8 dereferenceable(8) %150)
          to label %2607 unwind label %2636

2607:                                             ; preds = %2605
  invoke void @_ZN5sc_dtorEyRKNS_12sc_concatrefE(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_unsigned") align 8 %149, i64 noundef %2598, ptr noundef nonnull align 8 dereferenceable(36) %2606)
          to label %2608 unwind label %2636

2608:                                             ; preds = %2607
  %2609 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSERKNS_11sc_unsignedE(ptr noundef nonnull align 8 dereferenceable(24) %15, ptr noundef nonnull align 8 dereferenceable(32) %149)
          to label %2610 unwind label %2640

2610:                                             ; preds = %2608
  call void @_ZN5sc_dt11sc_unsignedD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %149) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %150) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %150) #5
  call void @llvm.lifetime.end.p0(i64 32, ptr %149) #5
  %2611 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 9, i32 noundef 5)
          to label %2612 unwind label %1026

2612:                                             ; preds = %2610
  %2613 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %16, ptr noundef nonnull align 8 dereferenceable(28) %2611)
          to label %2614 unwind label %1026

2614:                                             ; preds = %2612
  %2615 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %15)
          to label %2616 unwind label %1026

2616:                                             ; preds = %2614
  %2617 = icmp sgt i64 %2615, 2
  br i1 %2617, label %2618, label %2655

2618:                                             ; preds = %2616
  %2619 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 1)
          to label %2620 unwind label %1026

2620:                                             ; preds = %2618
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2621 unwind label %1026

2621:                                             ; preds = %2620
  call void @llvm.lifetime.start.p0(i64 1, ptr %151) #5
  store i8 1, ptr %151, align 1, !tbaa !9
  %2622 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 17
  %2623 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2622, ptr noundef nonnull align 1 dereferenceable(1) %151)
          to label %2624 unwind label %2647

2624:                                             ; preds = %2621
  call void @llvm.lifetime.end.p0(i64 1, ptr %151) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %152) #5
  store i8 1, ptr %152, align 1, !tbaa !9
  %2625 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 18
  %2626 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2625, ptr noundef nonnull align 1 dereferenceable(1) %152)
          to label %2627 unwind label %2651

2627:                                             ; preds = %2624
  call void @llvm.lifetime.end.p0(i64 1, ptr %152) #5
  br label %11916

2628:                                             ; preds = %2602, %2599, %2597, %2595
  %2629 = landingpad { ptr, i32 }
          cleanup
  %2630 = extractvalue { ptr, i32 } %2629, 0
  store ptr %2630, ptr %5, align 8
  %2631 = extractvalue { ptr, i32 } %2629, 1
  store i32 %2631, ptr %6, align 4
  br label %2646

2632:                                             ; preds = %2604
  %2633 = landingpad { ptr, i32 }
          cleanup
  %2634 = extractvalue { ptr, i32 } %2633, 0
  store ptr %2634, ptr %5, align 8
  %2635 = extractvalue { ptr, i32 } %2633, 1
  store i32 %2635, ptr %6, align 4
  br label %2645

2636:                                             ; preds = %2607, %2605
  %2637 = landingpad { ptr, i32 }
          cleanup
  %2638 = extractvalue { ptr, i32 } %2637, 0
  store ptr %2638, ptr %5, align 8
  %2639 = extractvalue { ptr, i32 } %2637, 1
  store i32 %2639, ptr %6, align 4
  br label %2644

2640:                                             ; preds = %2608
  %2641 = landingpad { ptr, i32 }
          cleanup
  %2642 = extractvalue { ptr, i32 } %2641, 0
  store ptr %2642, ptr %5, align 8
  %2643 = extractvalue { ptr, i32 } %2641, 1
  store i32 %2643, ptr %6, align 4
  call void @_ZN5sc_dt11sc_unsignedD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %149) #5
  br label %2644

2644:                                             ; preds = %2640, %2636
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %150) #5
  br label %2645

2645:                                             ; preds = %2644, %2632
  call void @llvm.lifetime.end.p0(i64 24, ptr %150) #5
  br label %2646

2646:                                             ; preds = %2645, %2628
  call void @llvm.lifetime.end.p0(i64 32, ptr %149) #5
  br label %12015

2647:                                             ; preds = %2621
  %2648 = landingpad { ptr, i32 }
          cleanup
  %2649 = extractvalue { ptr, i32 } %2648, 0
  store ptr %2649, ptr %5, align 8
  %2650 = extractvalue { ptr, i32 } %2648, 1
  store i32 %2650, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %151) #5
  br label %12015

2651:                                             ; preds = %2624
  %2652 = landingpad { ptr, i32 }
          cleanup
  %2653 = extractvalue { ptr, i32 } %2652, 0
  store ptr %2653, ptr %5, align 8
  %2654 = extractvalue { ptr, i32 } %2652, 1
  store i32 %2654, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %152) #5
  br label %12015

2655:                                             ; preds = %2616
  %2656 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %33, ptr noundef nonnull align 8 dereferenceable(24) %33)
          to label %2657 unwind label %1026

2657:                                             ; preds = %2655
  %2658 = load i8, ptr %34, align 1, !tbaa !9, !range !11, !noundef !12
  %2659 = trunc i8 %2658 to i1
  %2660 = zext i1 %2659 to i8
  store i8 %2660, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2661 unwind label %1026

2661:                                             ; preds = %2657
  br label %2662

2662:                                             ; preds = %2661
  %2663 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 0)
          to label %2664 unwind label %1026

2664:                                             ; preds = %2662
  %2665 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %2663)
          to label %2666 unwind label %1026

2666:                                             ; preds = %2664
  %2667 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 1)
          to label %2668 unwind label %1026

2668:                                             ; preds = %2666
  %2669 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %2667)
          to label %2670 unwind label %1026

2670:                                             ; preds = %2668
  %2671 = zext i1 %2669 to i32
  %2672 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %32, i32 noundef %2671)
          to label %2673 unwind label %1026

2673:                                             ; preds = %2670
  call void @llvm.lifetime.start.p0(i64 1, ptr %153) #5
  %2674 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 1)
          to label %2675 unwind label %2727

2675:                                             ; preds = %2673
  %2676 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %2674)
          to label %2677 unwind label %2727

2677:                                             ; preds = %2675
  %2678 = icmp ne i64 %2676, 0
  %2679 = zext i1 %2678 to i8
  store i8 %2679, ptr %153, align 1, !tbaa !9
  %2680 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 17
  %2681 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2680, ptr noundef nonnull align 1 dereferenceable(1) %153)
          to label %2682 unwind label %2727

2682:                                             ; preds = %2677
  call void @llvm.lifetime.end.p0(i64 1, ptr %153) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %154) #5
  %2683 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 0)
          to label %2684 unwind label %2731

2684:                                             ; preds = %2682
  %2685 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %2683)
          to label %2686 unwind label %2731

2686:                                             ; preds = %2684
  %2687 = icmp ne i64 %2685, 0
  %2688 = zext i1 %2687 to i8
  store i8 %2688, ptr %154, align 1, !tbaa !9
  %2689 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 18
  %2690 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2689, ptr noundef nonnull align 1 dereferenceable(1) %154)
          to label %2691 unwind label %2731

2691:                                             ; preds = %2686
  call void @llvm.lifetime.end.p0(i64 1, ptr %154) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %155) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %155, i32 noundef 8)
          to label %2692 unwind label %2735

2692:                                             ; preds = %2691
  %2693 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %155)
          to label %2694 unwind label %2739

2694:                                             ; preds = %2692
  %2695 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %2693)
          to label %2696 unwind label %2739

2696:                                             ; preds = %2694
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %155) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %155) #5
  %2697 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %2698 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2697, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %2699 unwind label %1026

2699:                                             ; preds = %2696
  %2700 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %2701 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2700, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %2702 unwind label %1026

2702:                                             ; preds = %2699
  call void @llvm.lifetime.start.p0(i64 1, ptr %156) #5
  store i8 1, ptr %156, align 1, !tbaa !9
  %2703 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %2704 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2703, ptr noundef nonnull align 1 dereferenceable(1) %156)
          to label %2705 unwind label %2744

2705:                                             ; preds = %2702
  call void @llvm.lifetime.end.p0(i64 1, ptr %156) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %157) #5
  store i8 1, ptr %157, align 1, !tbaa !9
  %2706 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %2707 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2706, ptr noundef nonnull align 1 dereferenceable(1) %157)
          to label %2708 unwind label %2748

2708:                                             ; preds = %2705
  call void @llvm.lifetime.end.p0(i64 1, ptr %157) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2709 unwind label %1026

2709:                                             ; preds = %2708
  br label %2710

2710:                                             ; preds = %2757, %2709
  br label %2711

2711:                                             ; preds = %2710
  %2712 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %2713 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %2712)
          to label %2714 unwind label %1026

2714:                                             ; preds = %2711
  %2715 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %2713)
          to label %2716 unwind label %1026

2716:                                             ; preds = %2714
  call void @llvm.lifetime.start.p0(i64 1, ptr %158) #5
  store i8 0, ptr %158, align 1, !tbaa !9
  %2717 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %2718 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2717, ptr noundef nonnull align 1 dereferenceable(1) %158)
          to label %2719 unwind label %2752

2719:                                             ; preds = %2716
  call void @llvm.lifetime.end.p0(i64 1, ptr %158) #5
  %2720 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %2721 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %2720)
          to label %2722 unwind label %1026

2722:                                             ; preds = %2719
  %2723 = load i8, ptr %2721, align 1, !tbaa !9, !range !11, !noundef !12
  %2724 = trunc i8 %2723 to i1
  br i1 %2724, label %2725, label %2756

2725:                                             ; preds = %2722
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2726 unwind label %1026

2726:                                             ; preds = %2725
  br label %2758

2727:                                             ; preds = %2677, %2675, %2673
  %2728 = landingpad { ptr, i32 }
          cleanup
  %2729 = extractvalue { ptr, i32 } %2728, 0
  store ptr %2729, ptr %5, align 8
  %2730 = extractvalue { ptr, i32 } %2728, 1
  store i32 %2730, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %153) #5
  br label %12015

2731:                                             ; preds = %2686, %2684, %2682
  %2732 = landingpad { ptr, i32 }
          cleanup
  %2733 = extractvalue { ptr, i32 } %2732, 0
  store ptr %2733, ptr %5, align 8
  %2734 = extractvalue { ptr, i32 } %2732, 1
  store i32 %2734, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %154) #5
  br label %12015

2735:                                             ; preds = %2691
  %2736 = landingpad { ptr, i32 }
          cleanup
  %2737 = extractvalue { ptr, i32 } %2736, 0
  store ptr %2737, ptr %5, align 8
  %2738 = extractvalue { ptr, i32 } %2736, 1
  store i32 %2738, ptr %6, align 4
  br label %2743

2739:                                             ; preds = %2694, %2692
  %2740 = landingpad { ptr, i32 }
          cleanup
  %2741 = extractvalue { ptr, i32 } %2740, 0
  store ptr %2741, ptr %5, align 8
  %2742 = extractvalue { ptr, i32 } %2740, 1
  store i32 %2742, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %155) #5
  br label %2743

2743:                                             ; preds = %2739, %2735
  call void @llvm.lifetime.end.p0(i64 24, ptr %155) #5
  br label %12015

2744:                                             ; preds = %2702
  %2745 = landingpad { ptr, i32 }
          cleanup
  %2746 = extractvalue { ptr, i32 } %2745, 0
  store ptr %2746, ptr %5, align 8
  %2747 = extractvalue { ptr, i32 } %2745, 1
  store i32 %2747, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %156) #5
  br label %12015

2748:                                             ; preds = %2705
  %2749 = landingpad { ptr, i32 }
          cleanup
  %2750 = extractvalue { ptr, i32 } %2749, 0
  store ptr %2750, ptr %5, align 8
  %2751 = extractvalue { ptr, i32 } %2749, 1
  store i32 %2751, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %157) #5
  br label %12015

2752:                                             ; preds = %2716
  %2753 = landingpad { ptr, i32 }
          cleanup
  %2754 = extractvalue { ptr, i32 } %2753, 0
  store ptr %2754, ptr %5, align 8
  %2755 = extractvalue { ptr, i32 } %2753, 1
  store i32 %2755, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %158) #5
  br label %12015

2756:                                             ; preds = %2722
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2757 unwind label %1026

2757:                                             ; preds = %2756
  br label %2710, !llvm.loop !41

2758:                                             ; preds = %2726
  %2759 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 11
  %2760 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %2759)
          to label %2761 unwind label %1026

2761:                                             ; preds = %2758
  %2762 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %2760, i32 noundef 2)
          to label %2763 unwind label %1026

2763:                                             ; preds = %2761
  %2764 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %2762)
          to label %2765 unwind label %1026

2765:                                             ; preds = %2763
  %2766 = icmp ne i64 %2764, 0
  br i1 %2766, label %2767, label %2770

2767:                                             ; preds = %2765
  %2768 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 254)
          to label %2769 unwind label %1026

2769:                                             ; preds = %2767
  br label %2773

2770:                                             ; preds = %2765
  %2771 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %4)
          to label %2772 unwind label %1026

2772:                                             ; preds = %2770
  br label %2773

2773:                                             ; preds = %2772, %2769
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2774 unwind label %1026

2774:                                             ; preds = %2773
  %2775 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 7, i32 noundef 0)
          to label %2776 unwind label %1026

2776:                                             ; preds = %2774
  %2777 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi32EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %35, ptr noundef nonnull align 8 dereferenceable(28) %2775)
          to label %2778 unwind label %1026

2778:                                             ; preds = %2776
  %2779 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %35)
          to label %2780 unwind label %1026

2780:                                             ; preds = %2778
  %2781 = trunc i64 %2779 to i32
  switch i32 %2781, label %11909 [
    i32 193, label %2782
    i32 1, label %3296
    i32 194, label %3531
    i32 201, label %3532
    i32 205, label %3533
    i32 209, label %3550
    i32 7, label %3567
    i32 59, label %3959
    i32 208, label %5093
    i32 9, label %5673
    i32 210, label %7755
    i32 176, label %9267
    i32 10, label %11092
  ]

2782:                                             ; preds = %2780
  %2783 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
          to label %2784 unwind label %1026

2784:                                             ; preds = %2782
  %2785 = icmp ne i64 %2783, 3
  br i1 %2785, label %2790, label %2786

2786:                                             ; preds = %2784
  %2787 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %15)
          to label %2788 unwind label %1026

2788:                                             ; preds = %2786
  %2789 = icmp ne i64 %2787, 0
  br i1 %2789, label %2790, label %2794

2790:                                             ; preds = %2788, %2784
  %2791 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 1)
          to label %2792 unwind label %1026

2792:                                             ; preds = %2790
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2793 unwind label %1026

2793:                                             ; preds = %2792
  br label %3295

2794:                                             ; preds = %2788
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2795 unwind label %1026

2795:                                             ; preds = %2794
  %2796 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %32, i32 noundef 1)
          to label %2797 unwind label %1026

2797:                                             ; preds = %2795
  %2798 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %33, ptr noundef nonnull align 8 dereferenceable(24) %33)
          to label %2799 unwind label %1026

2799:                                             ; preds = %2797
  %2800 = load i8, ptr %34, align 1, !tbaa !9, !range !11, !noundef !12
  %2801 = trunc i8 %2800 to i1
  %2802 = zext i1 %2801 to i8
  store i8 %2802, ptr %34, align 1, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %159) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %160) #5
  invoke void @_ZN5sc_dt6sc_intILi4EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %160, i32 noundef 0)
          to label %2803 unwind label %2858

2803:                                             ; preds = %2799
  %2804 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %160, ptr noundef nonnull align 8 dereferenceable(8) %27)
          to label %2805 unwind label %2862

2805:                                             ; preds = %2803
  call void @llvm.lifetime.start.p0(i64 24, ptr %161) #5
  %2806 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 5
  %2807 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %2806)
          to label %2808 unwind label %2866

2808:                                             ; preds = %2805
  invoke void @_ZN5sc_dt6sc_intILi4EEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %161, ptr noundef nonnull align 8 dereferenceable(24) %2807)
          to label %2809 unwind label %2866

2809:                                             ; preds = %2808
  %2810 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %2804, ptr noundef nonnull align 8 dereferenceable(8) %161)
          to label %2811 unwind label %2870

2811:                                             ; preds = %2809
  call void @llvm.lifetime.start.p0(i64 24, ptr %162) #5
  %2812 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 7
  %2813 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %2812)
          to label %2814 unwind label %2874

2814:                                             ; preds = %2811
  %2815 = load i8, ptr %2813, align 1, !tbaa !9, !range !11, !noundef !12
  %2816 = trunc i8 %2815 to i1
  %2817 = zext i1 %2816 to i32
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %162, i32 noundef %2817)
          to label %2818 unwind label %2874

2818:                                             ; preds = %2814
  %2819 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %2810, ptr noundef nonnull align 8 dereferenceable(8) %162)
          to label %2820 unwind label %2878

2820:                                             ; preds = %2818
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %159, ptr noundef nonnull align 1 dereferenceable(1) %2819)
          to label %2821 unwind label %2878

2821:                                             ; preds = %2820
  %2822 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %2823 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2822, ptr noundef nonnull align 8 dereferenceable(24) %159)
          to label %2824 unwind label %2882

2824:                                             ; preds = %2821
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %159) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %162) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %162) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %161) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %161) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %160) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %160) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %159) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %163) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %164) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %164, i32 noundef 10)
          to label %2825 unwind label %2892

2825:                                             ; preds = %2824
  %2826 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %164, ptr noundef nonnull align 8 dereferenceable(8) %28)
          to label %2827 unwind label %2896

2827:                                             ; preds = %2825
  call void @llvm.lifetime.start.p0(i64 24, ptr %165) #5
  %2828 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 10
  %2829 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %2828)
          to label %2830 unwind label %2900

2830:                                             ; preds = %2827
  %2831 = load i8, ptr %2829, align 1, !tbaa !9, !range !11, !noundef !12
  %2832 = trunc i8 %2831 to i1
  %2833 = zext i1 %2832 to i32
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %165, i32 noundef %2833)
          to label %2834 unwind label %2900

2834:                                             ; preds = %2830
  %2835 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %2826, ptr noundef nonnull align 8 dereferenceable(8) %165)
          to label %2836 unwind label %2904

2836:                                             ; preds = %2834
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %163, ptr noundef nonnull align 1 dereferenceable(1) %2835)
          to label %2837 unwind label %2904

2837:                                             ; preds = %2836
  %2838 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %2839 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2838, ptr noundef nonnull align 8 dereferenceable(24) %163)
          to label %2840 unwind label %2908

2840:                                             ; preds = %2837
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %163) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %165) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %165) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %164) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %164) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %163) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %166) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %166, i32 noundef -4)
          to label %2841 unwind label %2916

2841:                                             ; preds = %2840
  %2842 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %2843 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2842, ptr noundef nonnull align 8 dereferenceable(24) %166)
          to label %2844 unwind label %2920

2844:                                             ; preds = %2841
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %166) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %166) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %167) #5
  store i8 1, ptr %167, align 1, !tbaa !9
  %2845 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %2846 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2845, ptr noundef nonnull align 1 dereferenceable(1) %167)
          to label %2847 unwind label %2925

2847:                                             ; preds = %2844
  call void @llvm.lifetime.end.p0(i64 1, ptr %167) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2848 unwind label %1026

2848:                                             ; preds = %2847
  br label %2849

2849:                                             ; preds = %2857, %2848
  %2850 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %2851 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %2850)
          to label %2852 unwind label %1026

2852:                                             ; preds = %2849
  %2853 = load i8, ptr %2851, align 1, !tbaa !9, !range !11, !noundef !12
  %2854 = trunc i8 %2853 to i1
  %2855 = xor i1 %2854, true
  br i1 %2855, label %2856, label %2929

2856:                                             ; preds = %2852
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2857 unwind label %1026

2857:                                             ; preds = %2856
  br label %2849, !llvm.loop !42

2858:                                             ; preds = %2799
  %2859 = landingpad { ptr, i32 }
          cleanup
  %2860 = extractvalue { ptr, i32 } %2859, 0
  store ptr %2860, ptr %5, align 8
  %2861 = extractvalue { ptr, i32 } %2859, 1
  store i32 %2861, ptr %6, align 4
  br label %2891

2862:                                             ; preds = %2803
  %2863 = landingpad { ptr, i32 }
          cleanup
  %2864 = extractvalue { ptr, i32 } %2863, 0
  store ptr %2864, ptr %5, align 8
  %2865 = extractvalue { ptr, i32 } %2863, 1
  store i32 %2865, ptr %6, align 4
  br label %2890

2866:                                             ; preds = %2808, %2805
  %2867 = landingpad { ptr, i32 }
          cleanup
  %2868 = extractvalue { ptr, i32 } %2867, 0
  store ptr %2868, ptr %5, align 8
  %2869 = extractvalue { ptr, i32 } %2867, 1
  store i32 %2869, ptr %6, align 4
  br label %2889

2870:                                             ; preds = %2809
  %2871 = landingpad { ptr, i32 }
          cleanup
  %2872 = extractvalue { ptr, i32 } %2871, 0
  store ptr %2872, ptr %5, align 8
  %2873 = extractvalue { ptr, i32 } %2871, 1
  store i32 %2873, ptr %6, align 4
  br label %2888

2874:                                             ; preds = %2814, %2811
  %2875 = landingpad { ptr, i32 }
          cleanup
  %2876 = extractvalue { ptr, i32 } %2875, 0
  store ptr %2876, ptr %5, align 8
  %2877 = extractvalue { ptr, i32 } %2875, 1
  store i32 %2877, ptr %6, align 4
  br label %2887

2878:                                             ; preds = %2820, %2818
  %2879 = landingpad { ptr, i32 }
          cleanup
  %2880 = extractvalue { ptr, i32 } %2879, 0
  store ptr %2880, ptr %5, align 8
  %2881 = extractvalue { ptr, i32 } %2879, 1
  store i32 %2881, ptr %6, align 4
  br label %2886

2882:                                             ; preds = %2821
  %2883 = landingpad { ptr, i32 }
          cleanup
  %2884 = extractvalue { ptr, i32 } %2883, 0
  store ptr %2884, ptr %5, align 8
  %2885 = extractvalue { ptr, i32 } %2883, 1
  store i32 %2885, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %159) #5
  br label %2886

2886:                                             ; preds = %2882, %2878
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %162) #5
  br label %2887

2887:                                             ; preds = %2886, %2874
  call void @llvm.lifetime.end.p0(i64 24, ptr %162) #5
  br label %2888

2888:                                             ; preds = %2887, %2870
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %161) #5
  br label %2889

2889:                                             ; preds = %2888, %2866
  call void @llvm.lifetime.end.p0(i64 24, ptr %161) #5
  br label %2890

2890:                                             ; preds = %2889, %2862
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %160) #5
  br label %2891

2891:                                             ; preds = %2890, %2858
  call void @llvm.lifetime.end.p0(i64 24, ptr %160) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %159) #5
  br label %12015

2892:                                             ; preds = %2824
  %2893 = landingpad { ptr, i32 }
          cleanup
  %2894 = extractvalue { ptr, i32 } %2893, 0
  store ptr %2894, ptr %5, align 8
  %2895 = extractvalue { ptr, i32 } %2893, 1
  store i32 %2895, ptr %6, align 4
  br label %2915

2896:                                             ; preds = %2825
  %2897 = landingpad { ptr, i32 }
          cleanup
  %2898 = extractvalue { ptr, i32 } %2897, 0
  store ptr %2898, ptr %5, align 8
  %2899 = extractvalue { ptr, i32 } %2897, 1
  store i32 %2899, ptr %6, align 4
  br label %2914

2900:                                             ; preds = %2830, %2827
  %2901 = landingpad { ptr, i32 }
          cleanup
  %2902 = extractvalue { ptr, i32 } %2901, 0
  store ptr %2902, ptr %5, align 8
  %2903 = extractvalue { ptr, i32 } %2901, 1
  store i32 %2903, ptr %6, align 4
  br label %2913

2904:                                             ; preds = %2836, %2834
  %2905 = landingpad { ptr, i32 }
          cleanup
  %2906 = extractvalue { ptr, i32 } %2905, 0
  store ptr %2906, ptr %5, align 8
  %2907 = extractvalue { ptr, i32 } %2905, 1
  store i32 %2907, ptr %6, align 4
  br label %2912

2908:                                             ; preds = %2837
  %2909 = landingpad { ptr, i32 }
          cleanup
  %2910 = extractvalue { ptr, i32 } %2909, 0
  store ptr %2910, ptr %5, align 8
  %2911 = extractvalue { ptr, i32 } %2909, 1
  store i32 %2911, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %163) #5
  br label %2912

2912:                                             ; preds = %2908, %2904
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %165) #5
  br label %2913

2913:                                             ; preds = %2912, %2900
  call void @llvm.lifetime.end.p0(i64 24, ptr %165) #5
  br label %2914

2914:                                             ; preds = %2913, %2896
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %164) #5
  br label %2915

2915:                                             ; preds = %2914, %2892
  call void @llvm.lifetime.end.p0(i64 24, ptr %164) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %163) #5
  br label %12015

2916:                                             ; preds = %2840
  %2917 = landingpad { ptr, i32 }
          cleanup
  %2918 = extractvalue { ptr, i32 } %2917, 0
  store ptr %2918, ptr %5, align 8
  %2919 = extractvalue { ptr, i32 } %2917, 1
  store i32 %2919, ptr %6, align 4
  br label %2924

2920:                                             ; preds = %2841
  %2921 = landingpad { ptr, i32 }
          cleanup
  %2922 = extractvalue { ptr, i32 } %2921, 0
  store ptr %2922, ptr %5, align 8
  %2923 = extractvalue { ptr, i32 } %2921, 1
  store i32 %2923, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %166) #5
  br label %2924

2924:                                             ; preds = %2920, %2916
  call void @llvm.lifetime.end.p0(i64 24, ptr %166) #5
  br label %12015

2925:                                             ; preds = %2844
  %2926 = landingpad { ptr, i32 }
          cleanup
  %2927 = extractvalue { ptr, i32 } %2926, 0
  store ptr %2927, ptr %5, align 8
  %2928 = extractvalue { ptr, i32 } %2926, 1
  store i32 %2928, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %167) #5
  br label %12015

2929:                                             ; preds = %2852
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2930 unwind label %1026

2930:                                             ; preds = %2929
  call void @llvm.lifetime.start.p0(i64 1, ptr %168) #5
  store i8 0, ptr %168, align 1, !tbaa !9
  %2931 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %2932 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2931, ptr noundef nonnull align 1 dereferenceable(1) %168)
          to label %2933 unwind label %2966

2933:                                             ; preds = %2930
  call void @llvm.lifetime.end.p0(i64 1, ptr %168) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2934 unwind label %1026

2934:                                             ; preds = %2933
  call void @llvm.lifetime.start.p0(i64 24, ptr %169) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %169, i32 noundef 272)
          to label %2935 unwind label %2970

2935:                                             ; preds = %2934
  %2936 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %2937 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2936, ptr noundef nonnull align 8 dereferenceable(24) %169)
          to label %2938 unwind label %2974

2938:                                             ; preds = %2935
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %169) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %169) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %170) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %171) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %171, i32 noundef 0)
          to label %2939 unwind label %2979

2939:                                             ; preds = %2938
  %2940 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %171)
          to label %2941 unwind label %2983

2941:                                             ; preds = %2939
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %170, ptr noundef nonnull align 1 dereferenceable(1) %2940)
          to label %2942 unwind label %2983

2942:                                             ; preds = %2941
  %2943 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %2944 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2943, ptr noundef nonnull align 8 dereferenceable(24) %170)
          to label %2945 unwind label %2987

2945:                                             ; preds = %2942
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %170) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %171) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %171) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %170) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %172) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %172, i32 noundef 1)
          to label %2946 unwind label %2993

2946:                                             ; preds = %2945
  %2947 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %2948 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2947, ptr noundef nonnull align 8 dereferenceable(24) %172)
          to label %2949 unwind label %2997

2949:                                             ; preds = %2946
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %172) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %172) #5
  %2950 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %2951 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %2950, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %2952 unwind label %1026

2952:                                             ; preds = %2949
  call void @llvm.lifetime.start.p0(i64 1, ptr %173) #5
  store i8 1, ptr %173, align 1, !tbaa !9
  %2953 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %2954 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %2953, ptr noundef nonnull align 1 dereferenceable(1) %173)
          to label %2955 unwind label %3002

2955:                                             ; preds = %2952
  call void @llvm.lifetime.end.p0(i64 1, ptr %173) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2956 unwind label %1026

2956:                                             ; preds = %2955
  br label %2957

2957:                                             ; preds = %2965, %2956
  %2958 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %2959 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %2958)
          to label %2960 unwind label %1026

2960:                                             ; preds = %2957
  %2961 = load i8, ptr %2959, align 1, !tbaa !9, !range !11, !noundef !12
  %2962 = trunc i8 %2961 to i1
  %2963 = xor i1 %2962, true
  br i1 %2963, label %2964, label %3006

2964:                                             ; preds = %2960
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %2965 unwind label %1026

2965:                                             ; preds = %2964
  br label %2957, !llvm.loop !43

2966:                                             ; preds = %2930
  %2967 = landingpad { ptr, i32 }
          cleanup
  %2968 = extractvalue { ptr, i32 } %2967, 0
  store ptr %2968, ptr %5, align 8
  %2969 = extractvalue { ptr, i32 } %2967, 1
  store i32 %2969, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %168) #5
  br label %12015

2970:                                             ; preds = %2934
  %2971 = landingpad { ptr, i32 }
          cleanup
  %2972 = extractvalue { ptr, i32 } %2971, 0
  store ptr %2972, ptr %5, align 8
  %2973 = extractvalue { ptr, i32 } %2971, 1
  store i32 %2973, ptr %6, align 4
  br label %2978

2974:                                             ; preds = %2935
  %2975 = landingpad { ptr, i32 }
          cleanup
  %2976 = extractvalue { ptr, i32 } %2975, 0
  store ptr %2976, ptr %5, align 8
  %2977 = extractvalue { ptr, i32 } %2975, 1
  store i32 %2977, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %169) #5
  br label %2978

2978:                                             ; preds = %2974, %2970
  call void @llvm.lifetime.end.p0(i64 24, ptr %169) #5
  br label %12015

2979:                                             ; preds = %2938
  %2980 = landingpad { ptr, i32 }
          cleanup
  %2981 = extractvalue { ptr, i32 } %2980, 0
  store ptr %2981, ptr %5, align 8
  %2982 = extractvalue { ptr, i32 } %2980, 1
  store i32 %2982, ptr %6, align 4
  br label %2992

2983:                                             ; preds = %2941, %2939
  %2984 = landingpad { ptr, i32 }
          cleanup
  %2985 = extractvalue { ptr, i32 } %2984, 0
  store ptr %2985, ptr %5, align 8
  %2986 = extractvalue { ptr, i32 } %2984, 1
  store i32 %2986, ptr %6, align 4
  br label %2991

2987:                                             ; preds = %2942
  %2988 = landingpad { ptr, i32 }
          cleanup
  %2989 = extractvalue { ptr, i32 } %2988, 0
  store ptr %2989, ptr %5, align 8
  %2990 = extractvalue { ptr, i32 } %2988, 1
  store i32 %2990, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %170) #5
  br label %2991

2991:                                             ; preds = %2987, %2983
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %171) #5
  br label %2992

2992:                                             ; preds = %2991, %2979
  call void @llvm.lifetime.end.p0(i64 24, ptr %171) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %170) #5
  br label %12015

2993:                                             ; preds = %2945
  %2994 = landingpad { ptr, i32 }
          cleanup
  %2995 = extractvalue { ptr, i32 } %2994, 0
  store ptr %2995, ptr %5, align 8
  %2996 = extractvalue { ptr, i32 } %2994, 1
  store i32 %2996, ptr %6, align 4
  br label %3001

2997:                                             ; preds = %2946
  %2998 = landingpad { ptr, i32 }
          cleanup
  %2999 = extractvalue { ptr, i32 } %2998, 0
  store ptr %2999, ptr %5, align 8
  %3000 = extractvalue { ptr, i32 } %2998, 1
  store i32 %3000, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %172) #5
  br label %3001

3001:                                             ; preds = %2997, %2993
  call void @llvm.lifetime.end.p0(i64 24, ptr %172) #5
  br label %12015

3002:                                             ; preds = %2952
  %3003 = landingpad { ptr, i32 }
          cleanup
  %3004 = extractvalue { ptr, i32 } %3003, 0
  store ptr %3004, ptr %5, align 8
  %3005 = extractvalue { ptr, i32 } %3003, 1
  store i32 %3005, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %173) #5
  br label %12015

3006:                                             ; preds = %2960
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3007 unwind label %1026

3007:                                             ; preds = %3006
  call void @llvm.lifetime.start.p0(i64 1, ptr %174) #5
  store i8 0, ptr %174, align 1, !tbaa !9
  %3008 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %3009 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3008, ptr noundef nonnull align 1 dereferenceable(1) %174)
          to label %3010 unwind label %3045

3010:                                             ; preds = %3007
  call void @llvm.lifetime.end.p0(i64 1, ptr %174) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3011 unwind label %1026

3011:                                             ; preds = %3010
  %3012 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %32, i32 noundef -2)
          to label %3013 unwind label %1026

3013:                                             ; preds = %3011
  call void @llvm.lifetime.start.p0(i64 24, ptr %175) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %175, i32 noundef -8192)
          to label %3014 unwind label %3049

3014:                                             ; preds = %3013
  %3015 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %3016 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3015, ptr noundef nonnull align 8 dereferenceable(24) %175)
          to label %3017 unwind label %3053

3017:                                             ; preds = %3014
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %175) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %175) #5
  %3018 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %3019 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3018, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %3020 unwind label %1026

3020:                                             ; preds = %3017
  call void @llvm.lifetime.start.p0(i64 1, ptr %176) #5
  store i8 1, ptr %176, align 1, !tbaa !9
  %3021 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %3022 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3021, ptr noundef nonnull align 1 dereferenceable(1) %176)
          to label %3023 unwind label %3058

3023:                                             ; preds = %3020
  call void @llvm.lifetime.end.p0(i64 1, ptr %176) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %177) #5
  store i8 1, ptr %177, align 1, !tbaa !9
  %3024 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %3025 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3024, ptr noundef nonnull align 1 dereferenceable(1) %177)
          to label %3026 unwind label %3062

3026:                                             ; preds = %3023
  call void @llvm.lifetime.end.p0(i64 1, ptr %177) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3027 unwind label %1026

3027:                                             ; preds = %3026
  br label %3028

3028:                                             ; preds = %3071, %3027
  br label %3029

3029:                                             ; preds = %3028
  %3030 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %3031 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %3030)
          to label %3032 unwind label %1026

3032:                                             ; preds = %3029
  %3033 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %3031)
          to label %3034 unwind label %1026

3034:                                             ; preds = %3032
  call void @llvm.lifetime.start.p0(i64 1, ptr %178) #5
  store i8 0, ptr %178, align 1, !tbaa !9
  %3035 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %3036 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3035, ptr noundef nonnull align 1 dereferenceable(1) %178)
          to label %3037 unwind label %3066

3037:                                             ; preds = %3034
  call void @llvm.lifetime.end.p0(i64 1, ptr %178) #5
  %3038 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %3039 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %3038)
          to label %3040 unwind label %1026

3040:                                             ; preds = %3037
  %3041 = load i8, ptr %3039, align 1, !tbaa !9, !range !11, !noundef !12
  %3042 = trunc i8 %3041 to i1
  br i1 %3042, label %3043, label %3070

3043:                                             ; preds = %3040
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3044 unwind label %1026

3044:                                             ; preds = %3043
  br label %3072

3045:                                             ; preds = %3007
  %3046 = landingpad { ptr, i32 }
          cleanup
  %3047 = extractvalue { ptr, i32 } %3046, 0
  store ptr %3047, ptr %5, align 8
  %3048 = extractvalue { ptr, i32 } %3046, 1
  store i32 %3048, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %174) #5
  br label %12015

3049:                                             ; preds = %3013
  %3050 = landingpad { ptr, i32 }
          cleanup
  %3051 = extractvalue { ptr, i32 } %3050, 0
  store ptr %3051, ptr %5, align 8
  %3052 = extractvalue { ptr, i32 } %3050, 1
  store i32 %3052, ptr %6, align 4
  br label %3057

3053:                                             ; preds = %3014
  %3054 = landingpad { ptr, i32 }
          cleanup
  %3055 = extractvalue { ptr, i32 } %3054, 0
  store ptr %3055, ptr %5, align 8
  %3056 = extractvalue { ptr, i32 } %3054, 1
  store i32 %3056, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %175) #5
  br label %3057

3057:                                             ; preds = %3053, %3049
  call void @llvm.lifetime.end.p0(i64 24, ptr %175) #5
  br label %12015

3058:                                             ; preds = %3020
  %3059 = landingpad { ptr, i32 }
          cleanup
  %3060 = extractvalue { ptr, i32 } %3059, 0
  store ptr %3060, ptr %5, align 8
  %3061 = extractvalue { ptr, i32 } %3059, 1
  store i32 %3061, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %176) #5
  br label %12015

3062:                                             ; preds = %3023
  %3063 = landingpad { ptr, i32 }
          cleanup
  %3064 = extractvalue { ptr, i32 } %3063, 0
  store ptr %3064, ptr %5, align 8
  %3065 = extractvalue { ptr, i32 } %3063, 1
  store i32 %3065, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %177) #5
  br label %12015

3066:                                             ; preds = %3034
  %3067 = landingpad { ptr, i32 }
          cleanup
  %3068 = extractvalue { ptr, i32 } %3067, 0
  store ptr %3068, ptr %5, align 8
  %3069 = extractvalue { ptr, i32 } %3067, 1
  store i32 %3069, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %178) #5
  br label %12015

3070:                                             ; preds = %3040
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3071 unwind label %1026

3071:                                             ; preds = %3070
  br label %3028, !llvm.loop !44

3072:                                             ; preds = %3044
  call void @llvm.lifetime.start.p0(i64 24, ptr %179) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %180) #5
  invoke void @_ZN5sc_dt6sc_intILi4EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %180, i32 noundef 0)
          to label %3073 unwind label %3130

3073:                                             ; preds = %3072
  %3074 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 13, i32 noundef 7)
          to label %3075 unwind label %3134

3075:                                             ; preds = %3073
  %3076 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %180, ptr noundef nonnull align 8 dereferenceable(8) %3074)
          to label %3077 unwind label %3134

3077:                                             ; preds = %3075
  call void @llvm.lifetime.start.p0(i64 24, ptr %181) #5
  %3078 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 5
  %3079 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %3078)
          to label %3080 unwind label %3138

3080:                                             ; preds = %3077
  invoke void @_ZN5sc_dt6sc_intILi4EEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %181, ptr noundef nonnull align 8 dereferenceable(24) %3079)
          to label %3081 unwind label %3138

3081:                                             ; preds = %3080
  %3082 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %3076, ptr noundef nonnull align 8 dereferenceable(8) %181)
          to label %3083 unwind label %3142

3083:                                             ; preds = %3081
  call void @llvm.lifetime.start.p0(i64 24, ptr %182) #5
  %3084 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 7
  %3085 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %3084)
          to label %3086 unwind label %3146

3086:                                             ; preds = %3083
  %3087 = load i8, ptr %3085, align 1, !tbaa !9, !range !11, !noundef !12
  %3088 = trunc i8 %3087 to i1
  %3089 = zext i1 %3088 to i32
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %182, i32 noundef %3089)
          to label %3090 unwind label %3146

3090:                                             ; preds = %3086
  %3091 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %3082, ptr noundef nonnull align 8 dereferenceable(8) %182)
          to label %3092 unwind label %3150

3092:                                             ; preds = %3090
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %179, ptr noundef nonnull align 1 dereferenceable(1) %3091)
          to label %3093 unwind label %3150

3093:                                             ; preds = %3092
  %3094 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %3095 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3094, ptr noundef nonnull align 8 dereferenceable(24) %179)
          to label %3096 unwind label %3154

3096:                                             ; preds = %3093
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %179) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %182) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %182) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %181) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %181) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %180) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %180) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %179) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %183) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %184) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %184, i32 noundef 11)
          to label %3097 unwind label %3164

3097:                                             ; preds = %3096
  %3098 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %184, ptr noundef nonnull align 8 dereferenceable(8) %29)
          to label %3099 unwind label %3168

3099:                                             ; preds = %3097
  call void @llvm.lifetime.start.p0(i64 24, ptr %185) #5
  %3100 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 10
  %3101 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %3100)
          to label %3102 unwind label %3172

3102:                                             ; preds = %3099
  %3103 = load i8, ptr %3101, align 1, !tbaa !9, !range !11, !noundef !12
  %3104 = trunc i8 %3103 to i1
  %3105 = zext i1 %3104 to i32
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %185, i32 noundef %3105)
          to label %3106 unwind label %3172

3106:                                             ; preds = %3102
  %3107 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %3098, ptr noundef nonnull align 8 dereferenceable(8) %185)
          to label %3108 unwind label %3176

3108:                                             ; preds = %3106
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %183, ptr noundef nonnull align 1 dereferenceable(1) %3107)
          to label %3109 unwind label %3176

3109:                                             ; preds = %3108
  %3110 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %3111 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3110, ptr noundef nonnull align 8 dereferenceable(24) %183)
          to label %3112 unwind label %3180

3112:                                             ; preds = %3109
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %183) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %185) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %185) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %184) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %184) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %183) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %186) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %186, i32 noundef -4)
          to label %3113 unwind label %3188

3113:                                             ; preds = %3112
  %3114 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %3115 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3114, ptr noundef nonnull align 8 dereferenceable(24) %186)
          to label %3116 unwind label %3192

3116:                                             ; preds = %3113
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %186) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %186) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %187) #5
  store i8 1, ptr %187, align 1, !tbaa !9
  %3117 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %3118 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3117, ptr noundef nonnull align 1 dereferenceable(1) %187)
          to label %3119 unwind label %3197

3119:                                             ; preds = %3116
  call void @llvm.lifetime.end.p0(i64 1, ptr %187) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3120 unwind label %1026

3120:                                             ; preds = %3119
  br label %3121

3121:                                             ; preds = %3129, %3120
  %3122 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %3123 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %3122)
          to label %3124 unwind label %1026

3124:                                             ; preds = %3121
  %3125 = load i8, ptr %3123, align 1, !tbaa !9, !range !11, !noundef !12
  %3126 = trunc i8 %3125 to i1
  %3127 = xor i1 %3126, true
  br i1 %3127, label %3128, label %3201

3128:                                             ; preds = %3124
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3129 unwind label %1026

3129:                                             ; preds = %3128
  br label %3121, !llvm.loop !45

3130:                                             ; preds = %3072
  %3131 = landingpad { ptr, i32 }
          cleanup
  %3132 = extractvalue { ptr, i32 } %3131, 0
  store ptr %3132, ptr %5, align 8
  %3133 = extractvalue { ptr, i32 } %3131, 1
  store i32 %3133, ptr %6, align 4
  br label %3163

3134:                                             ; preds = %3075, %3073
  %3135 = landingpad { ptr, i32 }
          cleanup
  %3136 = extractvalue { ptr, i32 } %3135, 0
  store ptr %3136, ptr %5, align 8
  %3137 = extractvalue { ptr, i32 } %3135, 1
  store i32 %3137, ptr %6, align 4
  br label %3162

3138:                                             ; preds = %3080, %3077
  %3139 = landingpad { ptr, i32 }
          cleanup
  %3140 = extractvalue { ptr, i32 } %3139, 0
  store ptr %3140, ptr %5, align 8
  %3141 = extractvalue { ptr, i32 } %3139, 1
  store i32 %3141, ptr %6, align 4
  br label %3161

3142:                                             ; preds = %3081
  %3143 = landingpad { ptr, i32 }
          cleanup
  %3144 = extractvalue { ptr, i32 } %3143, 0
  store ptr %3144, ptr %5, align 8
  %3145 = extractvalue { ptr, i32 } %3143, 1
  store i32 %3145, ptr %6, align 4
  br label %3160

3146:                                             ; preds = %3086, %3083
  %3147 = landingpad { ptr, i32 }
          cleanup
  %3148 = extractvalue { ptr, i32 } %3147, 0
  store ptr %3148, ptr %5, align 8
  %3149 = extractvalue { ptr, i32 } %3147, 1
  store i32 %3149, ptr %6, align 4
  br label %3159

3150:                                             ; preds = %3092, %3090
  %3151 = landingpad { ptr, i32 }
          cleanup
  %3152 = extractvalue { ptr, i32 } %3151, 0
  store ptr %3152, ptr %5, align 8
  %3153 = extractvalue { ptr, i32 } %3151, 1
  store i32 %3153, ptr %6, align 4
  br label %3158

3154:                                             ; preds = %3093
  %3155 = landingpad { ptr, i32 }
          cleanup
  %3156 = extractvalue { ptr, i32 } %3155, 0
  store ptr %3156, ptr %5, align 8
  %3157 = extractvalue { ptr, i32 } %3155, 1
  store i32 %3157, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %179) #5
  br label %3158

3158:                                             ; preds = %3154, %3150
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %182) #5
  br label %3159

3159:                                             ; preds = %3158, %3146
  call void @llvm.lifetime.end.p0(i64 24, ptr %182) #5
  br label %3160

3160:                                             ; preds = %3159, %3142
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %181) #5
  br label %3161

3161:                                             ; preds = %3160, %3138
  call void @llvm.lifetime.end.p0(i64 24, ptr %181) #5
  br label %3162

3162:                                             ; preds = %3161, %3134
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %180) #5
  br label %3163

3163:                                             ; preds = %3162, %3130
  call void @llvm.lifetime.end.p0(i64 24, ptr %180) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %179) #5
  br label %12015

3164:                                             ; preds = %3096
  %3165 = landingpad { ptr, i32 }
          cleanup
  %3166 = extractvalue { ptr, i32 } %3165, 0
  store ptr %3166, ptr %5, align 8
  %3167 = extractvalue { ptr, i32 } %3165, 1
  store i32 %3167, ptr %6, align 4
  br label %3187

3168:                                             ; preds = %3097
  %3169 = landingpad { ptr, i32 }
          cleanup
  %3170 = extractvalue { ptr, i32 } %3169, 0
  store ptr %3170, ptr %5, align 8
  %3171 = extractvalue { ptr, i32 } %3169, 1
  store i32 %3171, ptr %6, align 4
  br label %3186

3172:                                             ; preds = %3102, %3099
  %3173 = landingpad { ptr, i32 }
          cleanup
  %3174 = extractvalue { ptr, i32 } %3173, 0
  store ptr %3174, ptr %5, align 8
  %3175 = extractvalue { ptr, i32 } %3173, 1
  store i32 %3175, ptr %6, align 4
  br label %3185

3176:                                             ; preds = %3108, %3106
  %3177 = landingpad { ptr, i32 }
          cleanup
  %3178 = extractvalue { ptr, i32 } %3177, 0
  store ptr %3178, ptr %5, align 8
  %3179 = extractvalue { ptr, i32 } %3177, 1
  store i32 %3179, ptr %6, align 4
  br label %3184

3180:                                             ; preds = %3109
  %3181 = landingpad { ptr, i32 }
          cleanup
  %3182 = extractvalue { ptr, i32 } %3181, 0
  store ptr %3182, ptr %5, align 8
  %3183 = extractvalue { ptr, i32 } %3181, 1
  store i32 %3183, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %183) #5
  br label %3184

3184:                                             ; preds = %3180, %3176
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %185) #5
  br label %3185

3185:                                             ; preds = %3184, %3172
  call void @llvm.lifetime.end.p0(i64 24, ptr %185) #5
  br label %3186

3186:                                             ; preds = %3185, %3168
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %184) #5
  br label %3187

3187:                                             ; preds = %3186, %3164
  call void @llvm.lifetime.end.p0(i64 24, ptr %184) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %183) #5
  br label %12015

3188:                                             ; preds = %3112
  %3189 = landingpad { ptr, i32 }
          cleanup
  %3190 = extractvalue { ptr, i32 } %3189, 0
  store ptr %3190, ptr %5, align 8
  %3191 = extractvalue { ptr, i32 } %3189, 1
  store i32 %3191, ptr %6, align 4
  br label %3196

3192:                                             ; preds = %3113
  %3193 = landingpad { ptr, i32 }
          cleanup
  %3194 = extractvalue { ptr, i32 } %3193, 0
  store ptr %3194, ptr %5, align 8
  %3195 = extractvalue { ptr, i32 } %3193, 1
  store i32 %3195, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %186) #5
  br label %3196

3196:                                             ; preds = %3192, %3188
  call void @llvm.lifetime.end.p0(i64 24, ptr %186) #5
  br label %12015

3197:                                             ; preds = %3116
  %3198 = landingpad { ptr, i32 }
          cleanup
  %3199 = extractvalue { ptr, i32 } %3198, 0
  store ptr %3199, ptr %5, align 8
  %3200 = extractvalue { ptr, i32 } %3198, 1
  store i32 %3200, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %187) #5
  br label %12015

3201:                                             ; preds = %3124
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3202 unwind label %1026

3202:                                             ; preds = %3201
  call void @llvm.lifetime.start.p0(i64 1, ptr %188) #5
  store i8 0, ptr %188, align 1, !tbaa !9
  %3203 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %3204 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3203, ptr noundef nonnull align 1 dereferenceable(1) %188)
          to label %3205 unwind label %3240

3205:                                             ; preds = %3202
  call void @llvm.lifetime.end.p0(i64 1, ptr %188) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3206 unwind label %1026

3206:                                             ; preds = %3205
  call void @llvm.lifetime.start.p0(i64 24, ptr %189) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %189, i32 noundef 288)
          to label %3207 unwind label %3244

3207:                                             ; preds = %3206
  %3208 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %3209 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3208, ptr noundef nonnull align 8 dereferenceable(24) %189)
          to label %3210 unwind label %3248

3210:                                             ; preds = %3207
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %189) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %189) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %190) #5
  %3211 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 13, i32 noundef 7)
          to label %3212 unwind label %3253

3212:                                             ; preds = %3210
  call void @llvm.lifetime.start.p0(i64 24, ptr %191) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %191, i32 noundef 0)
          to label %3213 unwind label %3257

3213:                                             ; preds = %3212
  %3214 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %3211, ptr noundef nonnull align 8 dereferenceable(8) %191)
          to label %3215 unwind label %3261

3215:                                             ; preds = %3213
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %190, ptr noundef nonnull align 1 dereferenceable(1) %3214)
          to label %3216 unwind label %3261

3216:                                             ; preds = %3215
  %3217 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %3218 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3217, ptr noundef nonnull align 8 dereferenceable(24) %190)
          to label %3219 unwind label %3265

3219:                                             ; preds = %3216
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %190) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %191) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %191) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %190) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %192) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %192, i32 noundef 1)
          to label %3220 unwind label %3272

3220:                                             ; preds = %3219
  %3221 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %3222 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3221, ptr noundef nonnull align 8 dereferenceable(24) %192)
          to label %3223 unwind label %3276

3223:                                             ; preds = %3220
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %192) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %192) #5
  %3224 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %3225 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3224, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %3226 unwind label %1026

3226:                                             ; preds = %3223
  call void @llvm.lifetime.start.p0(i64 1, ptr %193) #5
  store i8 1, ptr %193, align 1, !tbaa !9
  %3227 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %3228 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3227, ptr noundef nonnull align 1 dereferenceable(1) %193)
          to label %3229 unwind label %3281

3229:                                             ; preds = %3226
  call void @llvm.lifetime.end.p0(i64 1, ptr %193) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3230 unwind label %1026

3230:                                             ; preds = %3229
  br label %3231

3231:                                             ; preds = %3239, %3230
  %3232 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %3233 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %3232)
          to label %3234 unwind label %1026

3234:                                             ; preds = %3231
  %3235 = load i8, ptr %3233, align 1, !tbaa !9, !range !11, !noundef !12
  %3236 = trunc i8 %3235 to i1
  %3237 = xor i1 %3236, true
  br i1 %3237, label %3238, label %3285

3238:                                             ; preds = %3234
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3239 unwind label %1026

3239:                                             ; preds = %3238
  br label %3231, !llvm.loop !46

3240:                                             ; preds = %3202
  %3241 = landingpad { ptr, i32 }
          cleanup
  %3242 = extractvalue { ptr, i32 } %3241, 0
  store ptr %3242, ptr %5, align 8
  %3243 = extractvalue { ptr, i32 } %3241, 1
  store i32 %3243, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %188) #5
  br label %12015

3244:                                             ; preds = %3206
  %3245 = landingpad { ptr, i32 }
          cleanup
  %3246 = extractvalue { ptr, i32 } %3245, 0
  store ptr %3246, ptr %5, align 8
  %3247 = extractvalue { ptr, i32 } %3245, 1
  store i32 %3247, ptr %6, align 4
  br label %3252

3248:                                             ; preds = %3207
  %3249 = landingpad { ptr, i32 }
          cleanup
  %3250 = extractvalue { ptr, i32 } %3249, 0
  store ptr %3250, ptr %5, align 8
  %3251 = extractvalue { ptr, i32 } %3249, 1
  store i32 %3251, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %189) #5
  br label %3252

3252:                                             ; preds = %3248, %3244
  call void @llvm.lifetime.end.p0(i64 24, ptr %189) #5
  br label %12015

3253:                                             ; preds = %3210
  %3254 = landingpad { ptr, i32 }
          cleanup
  %3255 = extractvalue { ptr, i32 } %3254, 0
  store ptr %3255, ptr %5, align 8
  %3256 = extractvalue { ptr, i32 } %3254, 1
  store i32 %3256, ptr %6, align 4
  br label %3271

3257:                                             ; preds = %3212
  %3258 = landingpad { ptr, i32 }
          cleanup
  %3259 = extractvalue { ptr, i32 } %3258, 0
  store ptr %3259, ptr %5, align 8
  %3260 = extractvalue { ptr, i32 } %3258, 1
  store i32 %3260, ptr %6, align 4
  br label %3270

3261:                                             ; preds = %3215, %3213
  %3262 = landingpad { ptr, i32 }
          cleanup
  %3263 = extractvalue { ptr, i32 } %3262, 0
  store ptr %3263, ptr %5, align 8
  %3264 = extractvalue { ptr, i32 } %3262, 1
  store i32 %3264, ptr %6, align 4
  br label %3269

3265:                                             ; preds = %3216
  %3266 = landingpad { ptr, i32 }
          cleanup
  %3267 = extractvalue { ptr, i32 } %3266, 0
  store ptr %3267, ptr %5, align 8
  %3268 = extractvalue { ptr, i32 } %3266, 1
  store i32 %3268, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %190) #5
  br label %3269

3269:                                             ; preds = %3265, %3261
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %191) #5
  br label %3270

3270:                                             ; preds = %3269, %3257
  call void @llvm.lifetime.end.p0(i64 24, ptr %191) #5
  br label %3271

3271:                                             ; preds = %3270, %3253
  call void @llvm.lifetime.end.p0(i64 24, ptr %190) #5
  br label %12015

3272:                                             ; preds = %3219
  %3273 = landingpad { ptr, i32 }
          cleanup
  %3274 = extractvalue { ptr, i32 } %3273, 0
  store ptr %3274, ptr %5, align 8
  %3275 = extractvalue { ptr, i32 } %3273, 1
  store i32 %3275, ptr %6, align 4
  br label %3280

3276:                                             ; preds = %3220
  %3277 = landingpad { ptr, i32 }
          cleanup
  %3278 = extractvalue { ptr, i32 } %3277, 0
  store ptr %3278, ptr %5, align 8
  %3279 = extractvalue { ptr, i32 } %3277, 1
  store i32 %3279, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %192) #5
  br label %3280

3280:                                             ; preds = %3276, %3272
  call void @llvm.lifetime.end.p0(i64 24, ptr %192) #5
  br label %12015

3281:                                             ; preds = %3226
  %3282 = landingpad { ptr, i32 }
          cleanup
  %3283 = extractvalue { ptr, i32 } %3282, 0
  store ptr %3283, ptr %5, align 8
  %3284 = extractvalue { ptr, i32 } %3282, 1
  store i32 %3284, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %193) #5
  br label %12015

3285:                                             ; preds = %3234
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3286 unwind label %1026

3286:                                             ; preds = %3285
  call void @llvm.lifetime.start.p0(i64 1, ptr %194) #5
  store i8 0, ptr %194, align 1, !tbaa !9
  %3287 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %3288 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3287, ptr noundef nonnull align 1 dereferenceable(1) %194)
          to label %3289 unwind label %3291

3289:                                             ; preds = %3286
  call void @llvm.lifetime.end.p0(i64 1, ptr %194) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3290 unwind label %1026

3290:                                             ; preds = %3289
  br label %3295

3291:                                             ; preds = %3286
  %3292 = landingpad { ptr, i32 }
          cleanup
  %3293 = extractvalue { ptr, i32 } %3292, 0
  store ptr %3293, ptr %5, align 8
  %3294 = extractvalue { ptr, i32 } %3292, 1
  store i32 %3294, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %194) #5
  br label %12015

3295:                                             ; preds = %3290, %2793
  br label %11913

3296:                                             ; preds = %2780
  %3297 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
          to label %3298 unwind label %1026

3298:                                             ; preds = %3296
  %3299 = icmp ne i64 %3297, 3
  br i1 %3299, label %3304, label %3300

3300:                                             ; preds = %3298
  %3301 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %15)
          to label %3302 unwind label %1026

3302:                                             ; preds = %3300
  %3303 = icmp ne i64 %3301, 1
  br i1 %3303, label %3304, label %3308

3304:                                             ; preds = %3302, %3298
  %3305 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 1)
          to label %3306 unwind label %1026

3306:                                             ; preds = %3304
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3307 unwind label %1026

3307:                                             ; preds = %3306
  br label %3530

3308:                                             ; preds = %3302
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3309 unwind label %1026

3309:                                             ; preds = %3308
  %3310 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %33, ptr noundef nonnull align 8 dereferenceable(24) %33)
          to label %3311 unwind label %1026

3311:                                             ; preds = %3309
  store i8 1, ptr %34, align 1, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %195) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %195, i32 noundef 10)
          to label %3312 unwind label %3347

3312:                                             ; preds = %3311
  %3313 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %195)
          to label %3314 unwind label %3351

3314:                                             ; preds = %3312
  %3315 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %3313)
          to label %3316 unwind label %3351

3316:                                             ; preds = %3314
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %195) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %195) #5
  %3317 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %3318 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3317, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %3319 unwind label %1026

3319:                                             ; preds = %3316
  %3320 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %3321 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3320, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %3322 unwind label %1026

3322:                                             ; preds = %3319
  call void @llvm.lifetime.start.p0(i64 1, ptr %196) #5
  store i8 1, ptr %196, align 1, !tbaa !9
  %3323 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %3324 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3323, ptr noundef nonnull align 1 dereferenceable(1) %196)
          to label %3325 unwind label %3356

3325:                                             ; preds = %3322
  call void @llvm.lifetime.end.p0(i64 1, ptr %196) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %197) #5
  store i8 1, ptr %197, align 1, !tbaa !9
  %3326 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %3327 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3326, ptr noundef nonnull align 1 dereferenceable(1) %197)
          to label %3328 unwind label %3360

3328:                                             ; preds = %3325
  call void @llvm.lifetime.end.p0(i64 1, ptr %197) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3329 unwind label %1026

3329:                                             ; preds = %3328
  br label %3330

3330:                                             ; preds = %3369, %3329
  br label %3331

3331:                                             ; preds = %3330
  %3332 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %3333 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %3332)
          to label %3334 unwind label %1026

3334:                                             ; preds = %3331
  %3335 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %3333)
          to label %3336 unwind label %1026

3336:                                             ; preds = %3334
  call void @llvm.lifetime.start.p0(i64 1, ptr %198) #5
  store i8 0, ptr %198, align 1, !tbaa !9
  %3337 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %3338 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3337, ptr noundef nonnull align 1 dereferenceable(1) %198)
          to label %3339 unwind label %3364

3339:                                             ; preds = %3336
  call void @llvm.lifetime.end.p0(i64 1, ptr %198) #5
  %3340 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %3341 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %3340)
          to label %3342 unwind label %1026

3342:                                             ; preds = %3339
  %3343 = load i8, ptr %3341, align 1, !tbaa !9, !range !11, !noundef !12
  %3344 = trunc i8 %3343 to i1
  br i1 %3344, label %3345, label %3368

3345:                                             ; preds = %3342
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3346 unwind label %1026

3346:                                             ; preds = %3345
  br label %3370

3347:                                             ; preds = %3311
  %3348 = landingpad { ptr, i32 }
          cleanup
  %3349 = extractvalue { ptr, i32 } %3348, 0
  store ptr %3349, ptr %5, align 8
  %3350 = extractvalue { ptr, i32 } %3348, 1
  store i32 %3350, ptr %6, align 4
  br label %3355

3351:                                             ; preds = %3314, %3312
  %3352 = landingpad { ptr, i32 }
          cleanup
  %3353 = extractvalue { ptr, i32 } %3352, 0
  store ptr %3353, ptr %5, align 8
  %3354 = extractvalue { ptr, i32 } %3352, 1
  store i32 %3354, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %195) #5
  br label %3355

3355:                                             ; preds = %3351, %3347
  call void @llvm.lifetime.end.p0(i64 24, ptr %195) #5
  br label %12015

3356:                                             ; preds = %3322
  %3357 = landingpad { ptr, i32 }
          cleanup
  %3358 = extractvalue { ptr, i32 } %3357, 0
  store ptr %3358, ptr %5, align 8
  %3359 = extractvalue { ptr, i32 } %3357, 1
  store i32 %3359, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %196) #5
  br label %12015

3360:                                             ; preds = %3325
  %3361 = landingpad { ptr, i32 }
          cleanup
  %3362 = extractvalue { ptr, i32 } %3361, 0
  store ptr %3362, ptr %5, align 8
  %3363 = extractvalue { ptr, i32 } %3361, 1
  store i32 %3363, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %197) #5
  br label %12015

3364:                                             ; preds = %3336
  %3365 = landingpad { ptr, i32 }
          cleanup
  %3366 = extractvalue { ptr, i32 } %3365, 0
  store ptr %3366, ptr %5, align 8
  %3367 = extractvalue { ptr, i32 } %3365, 1
  store i32 %3367, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %198) #5
  br label %12015

3368:                                             ; preds = %3342
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3369 unwind label %1026

3369:                                             ; preds = %3368
  br label %3330, !llvm.loop !47

3370:                                             ; preds = %3346
  %3371 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 4, i32 noundef 0)
          to label %3372 unwind label %1026

3372:                                             ; preds = %3370
  %3373 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %28, ptr noundef nonnull align 8 dereferenceable(28) %3371)
          to label %3374 unwind label %1026

3374:                                             ; preds = %3372
  %3375 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %28)
          to label %3376 unwind label %1026

3376:                                             ; preds = %3374
  %3377 = add nsw i64 %3375, 1
  %3378 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %3377)
          to label %3379 unwind label %1026

3379:                                             ; preds = %3376
  call void @llvm.lifetime.start.p0(i64 24, ptr %199) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %199, i32 noundef 11)
          to label %3380 unwind label %3415

3380:                                             ; preds = %3379
  %3381 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %199)
          to label %3382 unwind label %3419

3382:                                             ; preds = %3380
  %3383 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %3381)
          to label %3384 unwind label %3419

3384:                                             ; preds = %3382
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %199) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %199) #5
  %3385 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %3386 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3385, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %3387 unwind label %1026

3387:                                             ; preds = %3384
  %3388 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %3389 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3388, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %3390 unwind label %1026

3390:                                             ; preds = %3387
  call void @llvm.lifetime.start.p0(i64 1, ptr %200) #5
  store i8 1, ptr %200, align 1, !tbaa !9
  %3391 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %3392 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3391, ptr noundef nonnull align 1 dereferenceable(1) %200)
          to label %3393 unwind label %3424

3393:                                             ; preds = %3390
  call void @llvm.lifetime.end.p0(i64 1, ptr %200) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %201) #5
  store i8 1, ptr %201, align 1, !tbaa !9
  %3394 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %3395 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3394, ptr noundef nonnull align 1 dereferenceable(1) %201)
          to label %3396 unwind label %3428

3396:                                             ; preds = %3393
  call void @llvm.lifetime.end.p0(i64 1, ptr %201) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3397 unwind label %1026

3397:                                             ; preds = %3396
  br label %3398

3398:                                             ; preds = %3437, %3397
  br label %3399

3399:                                             ; preds = %3398
  %3400 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %3401 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %3400)
          to label %3402 unwind label %1026

3402:                                             ; preds = %3399
  %3403 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %3401)
          to label %3404 unwind label %1026

3404:                                             ; preds = %3402
  call void @llvm.lifetime.start.p0(i64 1, ptr %202) #5
  store i8 0, ptr %202, align 1, !tbaa !9
  %3405 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %3406 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3405, ptr noundef nonnull align 1 dereferenceable(1) %202)
          to label %3407 unwind label %3432

3407:                                             ; preds = %3404
  call void @llvm.lifetime.end.p0(i64 1, ptr %202) #5
  %3408 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %3409 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %3408)
          to label %3410 unwind label %1026

3410:                                             ; preds = %3407
  %3411 = load i8, ptr %3409, align 1, !tbaa !9, !range !11, !noundef !12
  %3412 = trunc i8 %3411 to i1
  br i1 %3412, label %3413, label %3436

3413:                                             ; preds = %3410
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3414 unwind label %1026

3414:                                             ; preds = %3413
  br label %3438

3415:                                             ; preds = %3379
  %3416 = landingpad { ptr, i32 }
          cleanup
  %3417 = extractvalue { ptr, i32 } %3416, 0
  store ptr %3417, ptr %5, align 8
  %3418 = extractvalue { ptr, i32 } %3416, 1
  store i32 %3418, ptr %6, align 4
  br label %3423

3419:                                             ; preds = %3382, %3380
  %3420 = landingpad { ptr, i32 }
          cleanup
  %3421 = extractvalue { ptr, i32 } %3420, 0
  store ptr %3421, ptr %5, align 8
  %3422 = extractvalue { ptr, i32 } %3420, 1
  store i32 %3422, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %199) #5
  br label %3423

3423:                                             ; preds = %3419, %3415
  call void @llvm.lifetime.end.p0(i64 24, ptr %199) #5
  br label %12015

3424:                                             ; preds = %3390
  %3425 = landingpad { ptr, i32 }
          cleanup
  %3426 = extractvalue { ptr, i32 } %3425, 0
  store ptr %3426, ptr %5, align 8
  %3427 = extractvalue { ptr, i32 } %3425, 1
  store i32 %3427, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %200) #5
  br label %12015

3428:                                             ; preds = %3393
  %3429 = landingpad { ptr, i32 }
          cleanup
  %3430 = extractvalue { ptr, i32 } %3429, 0
  store ptr %3430, ptr %5, align 8
  %3431 = extractvalue { ptr, i32 } %3429, 1
  store i32 %3431, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %201) #5
  br label %12015

3432:                                             ; preds = %3404
  %3433 = landingpad { ptr, i32 }
          cleanup
  %3434 = extractvalue { ptr, i32 } %3433, 0
  store ptr %3434, ptr %5, align 8
  %3435 = extractvalue { ptr, i32 } %3433, 1
  store i32 %3435, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %202) #5
  br label %12015

3436:                                             ; preds = %3410
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3437 unwind label %1026

3437:                                             ; preds = %3436
  br label %3398, !llvm.loop !48

3438:                                             ; preds = %3414
  %3439 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %4)
          to label %3440 unwind label %1026

3440:                                             ; preds = %3438
  %3441 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 9)
          to label %3442 unwind label %1026

3442:                                             ; preds = %3440
  %3443 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %3444 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3443, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %3445 unwind label %1026

3445:                                             ; preds = %3442
  %3446 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %3447 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3446, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %3448 unwind label %1026

3448:                                             ; preds = %3445
  call void @llvm.lifetime.start.p0(i64 1, ptr %203) #5
  store i8 0, ptr %203, align 1, !tbaa !9
  %3449 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %3450 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3449, ptr noundef nonnull align 1 dereferenceable(1) %203)
          to label %3451 unwind label %3468

3451:                                             ; preds = %3448
  call void @llvm.lifetime.end.p0(i64 1, ptr %203) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %204) #5
  store i8 1, ptr %204, align 1, !tbaa !9
  %3452 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %3453 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3452, ptr noundef nonnull align 1 dereferenceable(1) %204)
          to label %3454 unwind label %3472

3454:                                             ; preds = %3451
  call void @llvm.lifetime.end.p0(i64 1, ptr %204) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3455 unwind label %1026

3455:                                             ; preds = %3454
  br label %3456

3456:                                             ; preds = %3481, %3455
  br label %3457

3457:                                             ; preds = %3456
  call void @llvm.lifetime.start.p0(i64 1, ptr %205) #5
  store i8 0, ptr %205, align 1, !tbaa !9
  %3458 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %3459 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3458, ptr noundef nonnull align 1 dereferenceable(1) %205)
          to label %3460 unwind label %3476

3460:                                             ; preds = %3457
  call void @llvm.lifetime.end.p0(i64 1, ptr %205) #5
  %3461 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %3462 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %3461)
          to label %3463 unwind label %1026

3463:                                             ; preds = %3460
  %3464 = load i8, ptr %3462, align 1, !tbaa !9, !range !11, !noundef !12
  %3465 = trunc i8 %3464 to i1
  br i1 %3465, label %3466, label %3480

3466:                                             ; preds = %3463
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3467 unwind label %1026

3467:                                             ; preds = %3466
  br label %3482

3468:                                             ; preds = %3448
  %3469 = landingpad { ptr, i32 }
          cleanup
  %3470 = extractvalue { ptr, i32 } %3469, 0
  store ptr %3470, ptr %5, align 8
  %3471 = extractvalue { ptr, i32 } %3469, 1
  store i32 %3471, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %203) #5
  br label %12015

3472:                                             ; preds = %3451
  %3473 = landingpad { ptr, i32 }
          cleanup
  %3474 = extractvalue { ptr, i32 } %3473, 0
  store ptr %3474, ptr %5, align 8
  %3475 = extractvalue { ptr, i32 } %3473, 1
  store i32 %3475, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %204) #5
  br label %12015

3476:                                             ; preds = %3457
  %3477 = landingpad { ptr, i32 }
          cleanup
  %3478 = extractvalue { ptr, i32 } %3477, 0
  store ptr %3478, ptr %5, align 8
  %3479 = extractvalue { ptr, i32 } %3477, 1
  store i32 %3479, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %205) #5
  br label %12015

3480:                                             ; preds = %3463
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3481 unwind label %1026

3481:                                             ; preds = %3480
  br label %3456, !llvm.loop !49

3482:                                             ; preds = %3467
  %3483 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %3484 unwind label %1026

3484:                                             ; preds = %3482
  %3485 = add nsw i64 %3483, 32
  %3486 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %3, i64 noundef %3485)
          to label %3487 unwind label %1026

3487:                                             ; preds = %3484
  %3488 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 17)
          to label %3489 unwind label %1026

3489:                                             ; preds = %3487
  %3490 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %3491 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3490, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %3492 unwind label %1026

3492:                                             ; preds = %3489
  %3493 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %3494 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3493, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %3495 unwind label %1026

3495:                                             ; preds = %3492
  call void @llvm.lifetime.start.p0(i64 1, ptr %206) #5
  store i8 0, ptr %206, align 1, !tbaa !9
  %3496 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %3497 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3496, ptr noundef nonnull align 1 dereferenceable(1) %206)
          to label %3498 unwind label %3515

3498:                                             ; preds = %3495
  call void @llvm.lifetime.end.p0(i64 1, ptr %206) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %207) #5
  store i8 1, ptr %207, align 1, !tbaa !9
  %3499 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %3500 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3499, ptr noundef nonnull align 1 dereferenceable(1) %207)
          to label %3501 unwind label %3519

3501:                                             ; preds = %3498
  call void @llvm.lifetime.end.p0(i64 1, ptr %207) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3502 unwind label %1026

3502:                                             ; preds = %3501
  br label %3503

3503:                                             ; preds = %3528, %3502
  br label %3504

3504:                                             ; preds = %3503
  call void @llvm.lifetime.start.p0(i64 1, ptr %208) #5
  store i8 0, ptr %208, align 1, !tbaa !9
  %3505 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %3506 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3505, ptr noundef nonnull align 1 dereferenceable(1) %208)
          to label %3507 unwind label %3523

3507:                                             ; preds = %3504
  call void @llvm.lifetime.end.p0(i64 1, ptr %208) #5
  %3508 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %3509 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %3508)
          to label %3510 unwind label %1026

3510:                                             ; preds = %3507
  %3511 = load i8, ptr %3509, align 1, !tbaa !9, !range !11, !noundef !12
  %3512 = trunc i8 %3511 to i1
  br i1 %3512, label %3513, label %3527

3513:                                             ; preds = %3510
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3514 unwind label %1026

3514:                                             ; preds = %3513
  br label %3529

3515:                                             ; preds = %3495
  %3516 = landingpad { ptr, i32 }
          cleanup
  %3517 = extractvalue { ptr, i32 } %3516, 0
  store ptr %3517, ptr %5, align 8
  %3518 = extractvalue { ptr, i32 } %3516, 1
  store i32 %3518, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %206) #5
  br label %12015

3519:                                             ; preds = %3498
  %3520 = landingpad { ptr, i32 }
          cleanup
  %3521 = extractvalue { ptr, i32 } %3520, 0
  store ptr %3521, ptr %5, align 8
  %3522 = extractvalue { ptr, i32 } %3520, 1
  store i32 %3522, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %207) #5
  br label %12015

3523:                                             ; preds = %3504
  %3524 = landingpad { ptr, i32 }
          cleanup
  %3525 = extractvalue { ptr, i32 } %3524, 0
  store ptr %3525, ptr %5, align 8
  %3526 = extractvalue { ptr, i32 } %3524, 1
  store i32 %3526, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %208) #5
  br label %12015

3527:                                             ; preds = %3510
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3528 unwind label %1026

3528:                                             ; preds = %3527
  br label %3503, !llvm.loop !50

3529:                                             ; preds = %3514
  br label %3530

3530:                                             ; preds = %3529, %3307
  br label %11913

3531:                                             ; preds = %2780
  br label %3532

3532:                                             ; preds = %3531, %2780
  br label %3533

3533:                                             ; preds = %3532, %2780
  %3534 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
          to label %3535 unwind label %1026

3535:                                             ; preds = %3533
  %3536 = icmp ne i64 %3534, 3
  br i1 %3536, label %3541, label %3537

3537:                                             ; preds = %3535
  %3538 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %15)
          to label %3539 unwind label %1026

3539:                                             ; preds = %3537
  %3540 = icmp ne i64 %3538, 0
  br i1 %3540, label %3541, label %3545

3541:                                             ; preds = %3539, %3535
  %3542 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 1)
          to label %3543 unwind label %1026

3543:                                             ; preds = %3541
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3544 unwind label %1026

3544:                                             ; preds = %3543
  br label %3549

3545:                                             ; preds = %3539
  %3546 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %33, ptr noundef nonnull align 8 dereferenceable(24) %33)
          to label %3547 unwind label %1026

3547:                                             ; preds = %3545
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3548 unwind label %1026

3548:                                             ; preds = %3547
  br label %3549

3549:                                             ; preds = %3548, %3544
  br label %11913

3550:                                             ; preds = %2780
  %3551 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
          to label %3552 unwind label %1026

3552:                                             ; preds = %3550
  %3553 = icmp ne i64 %3551, 3
  br i1 %3553, label %3558, label %3554

3554:                                             ; preds = %3552
  %3555 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %15)
          to label %3556 unwind label %1026

3556:                                             ; preds = %3554
  %3557 = icmp eq i64 %3555, 0
  br i1 %3557, label %3558, label %3562

3558:                                             ; preds = %3556, %3552
  %3559 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 1)
          to label %3560 unwind label %1026

3560:                                             ; preds = %3558
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3561 unwind label %1026

3561:                                             ; preds = %3560
  br label %3566

3562:                                             ; preds = %3556
  %3563 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %33, ptr noundef nonnull align 8 dereferenceable(24) %33)
          to label %3564 unwind label %1026

3564:                                             ; preds = %3562
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3565 unwind label %1026

3565:                                             ; preds = %3564
  br label %3566

3566:                                             ; preds = %3565, %3561
  br label %11913

3567:                                             ; preds = %2780
  %3568 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
          to label %3569 unwind label %1026

3569:                                             ; preds = %3567
  %3570 = icmp ne i64 %3568, 3
  br i1 %3570, label %3575, label %3571

3571:                                             ; preds = %3569
  %3572 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %15)
          to label %3573 unwind label %1026

3573:                                             ; preds = %3571
  %3574 = icmp eq i64 %3572, 0
  br i1 %3574, label %3575, label %3579

3575:                                             ; preds = %3573, %3569
  %3576 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 1)
          to label %3577 unwind label %1026

3577:                                             ; preds = %3575
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3578 unwind label %1026

3578:                                             ; preds = %3577
  br label %3958

3579:                                             ; preds = %3573
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3580 unwind label %1026

3580:                                             ; preds = %3579
  %3581 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %33, ptr noundef nonnull align 8 dereferenceable(24) %33)
          to label %3582 unwind label %1026

3582:                                             ; preds = %3580
  %3583 = load i8, ptr %34, align 1, !tbaa !9, !range !11, !noundef !12
  %3584 = trunc i8 %3583 to i1
  %3585 = zext i1 %3584 to i8
  store i8 %3585, ptr %34, align 1, !tbaa !9
  %3586 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 0)
          to label %3587 unwind label %1026

3587:                                             ; preds = %3582
  %3588 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %3586)
          to label %3589 unwind label %1026

3589:                                             ; preds = %3587
  %3590 = icmp eq i64 %3588, 1
  br i1 %3590, label %3591, label %3596

3591:                                             ; preds = %3589
  %3592 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 10)
          to label %3593 unwind label %1026

3593:                                             ; preds = %3591
  %3594 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 272)
          to label %3595 unwind label %1026

3595:                                             ; preds = %3593
  br label %3601

3596:                                             ; preds = %3589
  %3597 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 11)
          to label %3598 unwind label %1026

3598:                                             ; preds = %3596
  %3599 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 288)
          to label %3600 unwind label %1026

3600:                                             ; preds = %3598
  br label %3601

3601:                                             ; preds = %3600, %3595
  call void @llvm.lifetime.start.p0(i64 24, ptr %209) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %210) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %210, i32 noundef 0)
          to label %3602 unwind label %3640

3602:                                             ; preds = %3601
  %3603 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %210)
          to label %3604 unwind label %3644

3604:                                             ; preds = %3602
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %209, ptr noundef nonnull align 1 dereferenceable(1) %3603)
          to label %3605 unwind label %3644

3605:                                             ; preds = %3604
  %3606 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %3607 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3606, ptr noundef nonnull align 8 dereferenceable(24) %209)
          to label %3608 unwind label %3648

3608:                                             ; preds = %3605
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %209) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %210) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %210) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %209) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %211) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %211, i32 noundef 0)
          to label %3609 unwind label %3654

3609:                                             ; preds = %3608
  %3610 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %3611 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3610, ptr noundef nonnull align 8 dereferenceable(24) %211)
          to label %3612 unwind label %3658

3612:                                             ; preds = %3609
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %211) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %211) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %212) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %213) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %213, i32 noundef 0)
          to label %3613 unwind label %3663

3613:                                             ; preds = %3612
  %3614 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %213, ptr noundef nonnull align 8 dereferenceable(8) %15)
          to label %3615 unwind label %3667

3615:                                             ; preds = %3613
  call void @llvm.lifetime.start.p0(i64 24, ptr %214) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %214, i32 noundef 0)
          to label %3616 unwind label %3671

3616:                                             ; preds = %3615
  %3617 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %3614, ptr noundef nonnull align 8 dereferenceable(8) %214)
          to label %3618 unwind label %3675

3618:                                             ; preds = %3616
  invoke void @_ZN5sc_dt6sc_intILi7EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %212, ptr noundef nonnull align 1 dereferenceable(1) %3617)
          to label %3619 unwind label %3675

3619:                                             ; preds = %3618
  %3620 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %3621 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3620, ptr noundef nonnull align 8 dereferenceable(24) %212)
          to label %3622 unwind label %3679

3622:                                             ; preds = %3619
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %212) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %214) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %214) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %213) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %213) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %212) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %215) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %215, i32 noundef -3)
          to label %3623 unwind label %3687

3623:                                             ; preds = %3622
  %3624 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %3625 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3624, ptr noundef nonnull align 8 dereferenceable(24) %215)
          to label %3626 unwind label %3691

3626:                                             ; preds = %3623
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %215) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %215) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %216) #5
  store i8 1, ptr %216, align 1, !tbaa !9
  %3627 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %3628 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3627, ptr noundef nonnull align 1 dereferenceable(1) %216)
          to label %3629 unwind label %3696

3629:                                             ; preds = %3626
  call void @llvm.lifetime.end.p0(i64 1, ptr %216) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3630 unwind label %1026

3630:                                             ; preds = %3629
  br label %3631

3631:                                             ; preds = %3639, %3630
  %3632 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %3633 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %3632)
          to label %3634 unwind label %1026

3634:                                             ; preds = %3631
  %3635 = load i8, ptr %3633, align 1, !tbaa !9, !range !11, !noundef !12
  %3636 = trunc i8 %3635 to i1
  %3637 = xor i1 %3636, true
  br i1 %3637, label %3638, label %3700

3638:                                             ; preds = %3634
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3639 unwind label %1026

3639:                                             ; preds = %3638
  br label %3631, !llvm.loop !51

3640:                                             ; preds = %3601
  %3641 = landingpad { ptr, i32 }
          cleanup
  %3642 = extractvalue { ptr, i32 } %3641, 0
  store ptr %3642, ptr %5, align 8
  %3643 = extractvalue { ptr, i32 } %3641, 1
  store i32 %3643, ptr %6, align 4
  br label %3653

3644:                                             ; preds = %3604, %3602
  %3645 = landingpad { ptr, i32 }
          cleanup
  %3646 = extractvalue { ptr, i32 } %3645, 0
  store ptr %3646, ptr %5, align 8
  %3647 = extractvalue { ptr, i32 } %3645, 1
  store i32 %3647, ptr %6, align 4
  br label %3652

3648:                                             ; preds = %3605
  %3649 = landingpad { ptr, i32 }
          cleanup
  %3650 = extractvalue { ptr, i32 } %3649, 0
  store ptr %3650, ptr %5, align 8
  %3651 = extractvalue { ptr, i32 } %3649, 1
  store i32 %3651, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %209) #5
  br label %3652

3652:                                             ; preds = %3648, %3644
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %210) #5
  br label %3653

3653:                                             ; preds = %3652, %3640
  call void @llvm.lifetime.end.p0(i64 24, ptr %210) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %209) #5
  br label %12015

3654:                                             ; preds = %3608
  %3655 = landingpad { ptr, i32 }
          cleanup
  %3656 = extractvalue { ptr, i32 } %3655, 0
  store ptr %3656, ptr %5, align 8
  %3657 = extractvalue { ptr, i32 } %3655, 1
  store i32 %3657, ptr %6, align 4
  br label %3662

3658:                                             ; preds = %3609
  %3659 = landingpad { ptr, i32 }
          cleanup
  %3660 = extractvalue { ptr, i32 } %3659, 0
  store ptr %3660, ptr %5, align 8
  %3661 = extractvalue { ptr, i32 } %3659, 1
  store i32 %3661, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %211) #5
  br label %3662

3662:                                             ; preds = %3658, %3654
  call void @llvm.lifetime.end.p0(i64 24, ptr %211) #5
  br label %12015

3663:                                             ; preds = %3612
  %3664 = landingpad { ptr, i32 }
          cleanup
  %3665 = extractvalue { ptr, i32 } %3664, 0
  store ptr %3665, ptr %5, align 8
  %3666 = extractvalue { ptr, i32 } %3664, 1
  store i32 %3666, ptr %6, align 4
  br label %3686

3667:                                             ; preds = %3613
  %3668 = landingpad { ptr, i32 }
          cleanup
  %3669 = extractvalue { ptr, i32 } %3668, 0
  store ptr %3669, ptr %5, align 8
  %3670 = extractvalue { ptr, i32 } %3668, 1
  store i32 %3670, ptr %6, align 4
  br label %3685

3671:                                             ; preds = %3615
  %3672 = landingpad { ptr, i32 }
          cleanup
  %3673 = extractvalue { ptr, i32 } %3672, 0
  store ptr %3673, ptr %5, align 8
  %3674 = extractvalue { ptr, i32 } %3672, 1
  store i32 %3674, ptr %6, align 4
  br label %3684

3675:                                             ; preds = %3618, %3616
  %3676 = landingpad { ptr, i32 }
          cleanup
  %3677 = extractvalue { ptr, i32 } %3676, 0
  store ptr %3677, ptr %5, align 8
  %3678 = extractvalue { ptr, i32 } %3676, 1
  store i32 %3678, ptr %6, align 4
  br label %3683

3679:                                             ; preds = %3619
  %3680 = landingpad { ptr, i32 }
          cleanup
  %3681 = extractvalue { ptr, i32 } %3680, 0
  store ptr %3681, ptr %5, align 8
  %3682 = extractvalue { ptr, i32 } %3680, 1
  store i32 %3682, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %212) #5
  br label %3683

3683:                                             ; preds = %3679, %3675
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %214) #5
  br label %3684

3684:                                             ; preds = %3683, %3671
  call void @llvm.lifetime.end.p0(i64 24, ptr %214) #5
  br label %3685

3685:                                             ; preds = %3684, %3667
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %213) #5
  br label %3686

3686:                                             ; preds = %3685, %3663
  call void @llvm.lifetime.end.p0(i64 24, ptr %213) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %212) #5
  br label %12015

3687:                                             ; preds = %3622
  %3688 = landingpad { ptr, i32 }
          cleanup
  %3689 = extractvalue { ptr, i32 } %3688, 0
  store ptr %3689, ptr %5, align 8
  %3690 = extractvalue { ptr, i32 } %3688, 1
  store i32 %3690, ptr %6, align 4
  br label %3695

3691:                                             ; preds = %3623
  %3692 = landingpad { ptr, i32 }
          cleanup
  %3693 = extractvalue { ptr, i32 } %3692, 0
  store ptr %3693, ptr %5, align 8
  %3694 = extractvalue { ptr, i32 } %3692, 1
  store i32 %3694, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %215) #5
  br label %3695

3695:                                             ; preds = %3691, %3687
  call void @llvm.lifetime.end.p0(i64 24, ptr %215) #5
  br label %12015

3696:                                             ; preds = %3626
  %3697 = landingpad { ptr, i32 }
          cleanup
  %3698 = extractvalue { ptr, i32 } %3697, 0
  store ptr %3698, ptr %5, align 8
  %3699 = extractvalue { ptr, i32 } %3697, 1
  store i32 %3699, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %216) #5
  br label %12015

3700:                                             ; preds = %3634
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3701 unwind label %1026

3701:                                             ; preds = %3700
  call void @llvm.lifetime.start.p0(i64 1, ptr %217) #5
  store i8 0, ptr %217, align 1, !tbaa !9
  %3702 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %3703 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3702, ptr noundef nonnull align 1 dereferenceable(1) %217)
          to label %3704 unwind label %3734

3704:                                             ; preds = %3701
  call void @llvm.lifetime.end.p0(i64 1, ptr %217) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3705 unwind label %1026

3705:                                             ; preds = %3704
  call void @llvm.lifetime.start.p0(i64 24, ptr %218) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %218, i32 noundef 451)
          to label %3706 unwind label %3738

3706:                                             ; preds = %3705
  %3707 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %3708 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3707, ptr noundef nonnull align 8 dereferenceable(24) %218)
          to label %3709 unwind label %3742

3709:                                             ; preds = %3706
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %218) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %218) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %219) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %219, i32 noundef 0)
          to label %3710 unwind label %3747

3710:                                             ; preds = %3709
  %3711 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %3712 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3711, ptr noundef nonnull align 8 dereferenceable(24) %219)
          to label %3713 unwind label %3751

3713:                                             ; preds = %3710
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %219) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %219) #5
  %3714 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %3715 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3714, ptr noundef nonnull align 8 dereferenceable(24) %27)
          to label %3716 unwind label %1026

3716:                                             ; preds = %3713
  call void @llvm.lifetime.start.p0(i64 24, ptr %220) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %220, i32 noundef -2)
          to label %3717 unwind label %3756

3717:                                             ; preds = %3716
  %3718 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %3719 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3718, ptr noundef nonnull align 8 dereferenceable(24) %220)
          to label %3720 unwind label %3760

3720:                                             ; preds = %3717
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %220) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %220) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %221) #5
  store i8 1, ptr %221, align 1, !tbaa !9
  %3721 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %3722 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3721, ptr noundef nonnull align 1 dereferenceable(1) %221)
          to label %3723 unwind label %3765

3723:                                             ; preds = %3720
  call void @llvm.lifetime.end.p0(i64 1, ptr %221) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3724 unwind label %1026

3724:                                             ; preds = %3723
  br label %3725

3725:                                             ; preds = %3733, %3724
  %3726 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %3727 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %3726)
          to label %3728 unwind label %1026

3728:                                             ; preds = %3725
  %3729 = load i8, ptr %3727, align 1, !tbaa !9, !range !11, !noundef !12
  %3730 = trunc i8 %3729 to i1
  %3731 = xor i1 %3730, true
  br i1 %3731, label %3732, label %3769

3732:                                             ; preds = %3728
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3733 unwind label %1026

3733:                                             ; preds = %3732
  br label %3725, !llvm.loop !52

3734:                                             ; preds = %3701
  %3735 = landingpad { ptr, i32 }
          cleanup
  %3736 = extractvalue { ptr, i32 } %3735, 0
  store ptr %3736, ptr %5, align 8
  %3737 = extractvalue { ptr, i32 } %3735, 1
  store i32 %3737, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %217) #5
  br label %12015

3738:                                             ; preds = %3705
  %3739 = landingpad { ptr, i32 }
          cleanup
  %3740 = extractvalue { ptr, i32 } %3739, 0
  store ptr %3740, ptr %5, align 8
  %3741 = extractvalue { ptr, i32 } %3739, 1
  store i32 %3741, ptr %6, align 4
  br label %3746

3742:                                             ; preds = %3706
  %3743 = landingpad { ptr, i32 }
          cleanup
  %3744 = extractvalue { ptr, i32 } %3743, 0
  store ptr %3744, ptr %5, align 8
  %3745 = extractvalue { ptr, i32 } %3743, 1
  store i32 %3745, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %218) #5
  br label %3746

3746:                                             ; preds = %3742, %3738
  call void @llvm.lifetime.end.p0(i64 24, ptr %218) #5
  br label %12015

3747:                                             ; preds = %3709
  %3748 = landingpad { ptr, i32 }
          cleanup
  %3749 = extractvalue { ptr, i32 } %3748, 0
  store ptr %3749, ptr %5, align 8
  %3750 = extractvalue { ptr, i32 } %3748, 1
  store i32 %3750, ptr %6, align 4
  br label %3755

3751:                                             ; preds = %3710
  %3752 = landingpad { ptr, i32 }
          cleanup
  %3753 = extractvalue { ptr, i32 } %3752, 0
  store ptr %3753, ptr %5, align 8
  %3754 = extractvalue { ptr, i32 } %3752, 1
  store i32 %3754, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %219) #5
  br label %3755

3755:                                             ; preds = %3751, %3747
  call void @llvm.lifetime.end.p0(i64 24, ptr %219) #5
  br label %12015

3756:                                             ; preds = %3716
  %3757 = landingpad { ptr, i32 }
          cleanup
  %3758 = extractvalue { ptr, i32 } %3757, 0
  store ptr %3758, ptr %5, align 8
  %3759 = extractvalue { ptr, i32 } %3757, 1
  store i32 %3759, ptr %6, align 4
  br label %3764

3760:                                             ; preds = %3717
  %3761 = landingpad { ptr, i32 }
          cleanup
  %3762 = extractvalue { ptr, i32 } %3761, 0
  store ptr %3762, ptr %5, align 8
  %3763 = extractvalue { ptr, i32 } %3761, 1
  store i32 %3763, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %220) #5
  br label %3764

3764:                                             ; preds = %3760, %3756
  call void @llvm.lifetime.end.p0(i64 24, ptr %220) #5
  br label %12015

3765:                                             ; preds = %3720
  %3766 = landingpad { ptr, i32 }
          cleanup
  %3767 = extractvalue { ptr, i32 } %3766, 0
  store ptr %3767, ptr %5, align 8
  %3768 = extractvalue { ptr, i32 } %3766, 1
  store i32 %3768, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %221) #5
  br label %12015

3769:                                             ; preds = %3728
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3770 unwind label %1026

3770:                                             ; preds = %3769
  call void @llvm.lifetime.start.p0(i64 1, ptr %222) #5
  store i8 0, ptr %222, align 1, !tbaa !9
  %3771 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %3772 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3771, ptr noundef nonnull align 1 dereferenceable(1) %222)
          to label %3773 unwind label %3807

3773:                                             ; preds = %3770
  call void @llvm.lifetime.end.p0(i64 1, ptr %222) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3774 unwind label %1026

3774:                                             ; preds = %3773
  call void @llvm.lifetime.start.p0(i64 24, ptr %223) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %223, i32 noundef 11)
          to label %3775 unwind label %3811

3775:                                             ; preds = %3774
  %3776 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %223)
          to label %3777 unwind label %3815

3777:                                             ; preds = %3775
  %3778 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %3776)
          to label %3779 unwind label %3815

3779:                                             ; preds = %3777
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %223) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %223) #5
  %3780 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 1)
          to label %3781 unwind label %1026

3781:                                             ; preds = %3779
  %3782 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %3783 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3782, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %3784 unwind label %1026

3784:                                             ; preds = %3781
  %3785 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %3786 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3785, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %3787 unwind label %1026

3787:                                             ; preds = %3784
  call void @llvm.lifetime.start.p0(i64 1, ptr %224) #5
  store i8 0, ptr %224, align 1, !tbaa !9
  %3788 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %3789 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3788, ptr noundef nonnull align 1 dereferenceable(1) %224)
          to label %3790 unwind label %3820

3790:                                             ; preds = %3787
  call void @llvm.lifetime.end.p0(i64 1, ptr %224) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %225) #5
  store i8 1, ptr %225, align 1, !tbaa !9
  %3791 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %3792 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3791, ptr noundef nonnull align 1 dereferenceable(1) %225)
          to label %3793 unwind label %3824

3793:                                             ; preds = %3790
  call void @llvm.lifetime.end.p0(i64 1, ptr %225) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3794 unwind label %1026

3794:                                             ; preds = %3793
  br label %3795

3795:                                             ; preds = %3833, %3794
  br label %3796

3796:                                             ; preds = %3795
  call void @llvm.lifetime.start.p0(i64 1, ptr %226) #5
  store i8 0, ptr %226, align 1, !tbaa !9
  %3797 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %3798 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3797, ptr noundef nonnull align 1 dereferenceable(1) %226)
          to label %3799 unwind label %3828

3799:                                             ; preds = %3796
  call void @llvm.lifetime.end.p0(i64 1, ptr %226) #5
  %3800 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %3801 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %3800)
          to label %3802 unwind label %1026

3802:                                             ; preds = %3799
  %3803 = load i8, ptr %3801, align 1, !tbaa !9, !range !11, !noundef !12
  %3804 = trunc i8 %3803 to i1
  br i1 %3804, label %3805, label %3832

3805:                                             ; preds = %3802
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3806 unwind label %1026

3806:                                             ; preds = %3805
  br label %3834

3807:                                             ; preds = %3770
  %3808 = landingpad { ptr, i32 }
          cleanup
  %3809 = extractvalue { ptr, i32 } %3808, 0
  store ptr %3809, ptr %5, align 8
  %3810 = extractvalue { ptr, i32 } %3808, 1
  store i32 %3810, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %222) #5
  br label %12015

3811:                                             ; preds = %3774
  %3812 = landingpad { ptr, i32 }
          cleanup
  %3813 = extractvalue { ptr, i32 } %3812, 0
  store ptr %3813, ptr %5, align 8
  %3814 = extractvalue { ptr, i32 } %3812, 1
  store i32 %3814, ptr %6, align 4
  br label %3819

3815:                                             ; preds = %3777, %3775
  %3816 = landingpad { ptr, i32 }
          cleanup
  %3817 = extractvalue { ptr, i32 } %3816, 0
  store ptr %3817, ptr %5, align 8
  %3818 = extractvalue { ptr, i32 } %3816, 1
  store i32 %3818, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %223) #5
  br label %3819

3819:                                             ; preds = %3815, %3811
  call void @llvm.lifetime.end.p0(i64 24, ptr %223) #5
  br label %12015

3820:                                             ; preds = %3787
  %3821 = landingpad { ptr, i32 }
          cleanup
  %3822 = extractvalue { ptr, i32 } %3821, 0
  store ptr %3822, ptr %5, align 8
  %3823 = extractvalue { ptr, i32 } %3821, 1
  store i32 %3823, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %224) #5
  br label %12015

3824:                                             ; preds = %3790
  %3825 = landingpad { ptr, i32 }
          cleanup
  %3826 = extractvalue { ptr, i32 } %3825, 0
  store ptr %3826, ptr %5, align 8
  %3827 = extractvalue { ptr, i32 } %3825, 1
  store i32 %3827, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %225) #5
  br label %12015

3828:                                             ; preds = %3796
  %3829 = landingpad { ptr, i32 }
          cleanup
  %3830 = extractvalue { ptr, i32 } %3829, 0
  store ptr %3830, ptr %5, align 8
  %3831 = extractvalue { ptr, i32 } %3829, 1
  store i32 %3831, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %226) #5
  br label %12015

3832:                                             ; preds = %3802
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3833 unwind label %1026

3833:                                             ; preds = %3832
  br label %3795, !llvm.loop !53

3834:                                             ; preds = %3806
  call void @llvm.lifetime.start.p0(i64 24, ptr %227) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %227, i32 noundef 12)
          to label %3835 unwind label %3867

3835:                                             ; preds = %3834
  %3836 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %227)
          to label %3837 unwind label %3871

3837:                                             ; preds = %3835
  %3838 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %3836)
          to label %3839 unwind label %3871

3839:                                             ; preds = %3837
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %227) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %227) #5
  %3840 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 0)
          to label %3841 unwind label %1026

3841:                                             ; preds = %3839
  %3842 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %3843 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3842, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %3844 unwind label %1026

3844:                                             ; preds = %3841
  %3845 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %3846 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3845, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %3847 unwind label %1026

3847:                                             ; preds = %3844
  call void @llvm.lifetime.start.p0(i64 1, ptr %228) #5
  store i8 0, ptr %228, align 1, !tbaa !9
  %3848 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %3849 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3848, ptr noundef nonnull align 1 dereferenceable(1) %228)
          to label %3850 unwind label %3876

3850:                                             ; preds = %3847
  call void @llvm.lifetime.end.p0(i64 1, ptr %228) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %229) #5
  store i8 1, ptr %229, align 1, !tbaa !9
  %3851 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %3852 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3851, ptr noundef nonnull align 1 dereferenceable(1) %229)
          to label %3853 unwind label %3880

3853:                                             ; preds = %3850
  call void @llvm.lifetime.end.p0(i64 1, ptr %229) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3854 unwind label %1026

3854:                                             ; preds = %3853
  br label %3855

3855:                                             ; preds = %3889, %3854
  br label %3856

3856:                                             ; preds = %3855
  call void @llvm.lifetime.start.p0(i64 1, ptr %230) #5
  store i8 0, ptr %230, align 1, !tbaa !9
  %3857 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %3858 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3857, ptr noundef nonnull align 1 dereferenceable(1) %230)
          to label %3859 unwind label %3884

3859:                                             ; preds = %3856
  call void @llvm.lifetime.end.p0(i64 1, ptr %230) #5
  %3860 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %3861 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %3860)
          to label %3862 unwind label %1026

3862:                                             ; preds = %3859
  %3863 = load i8, ptr %3861, align 1, !tbaa !9, !range !11, !noundef !12
  %3864 = trunc i8 %3863 to i1
  br i1 %3864, label %3865, label %3888

3865:                                             ; preds = %3862
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3866 unwind label %1026

3866:                                             ; preds = %3865
  br label %3890

3867:                                             ; preds = %3834
  %3868 = landingpad { ptr, i32 }
          cleanup
  %3869 = extractvalue { ptr, i32 } %3868, 0
  store ptr %3869, ptr %5, align 8
  %3870 = extractvalue { ptr, i32 } %3868, 1
  store i32 %3870, ptr %6, align 4
  br label %3875

3871:                                             ; preds = %3837, %3835
  %3872 = landingpad { ptr, i32 }
          cleanup
  %3873 = extractvalue { ptr, i32 } %3872, 0
  store ptr %3873, ptr %5, align 8
  %3874 = extractvalue { ptr, i32 } %3872, 1
  store i32 %3874, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %227) #5
  br label %3875

3875:                                             ; preds = %3871, %3867
  call void @llvm.lifetime.end.p0(i64 24, ptr %227) #5
  br label %12015

3876:                                             ; preds = %3847
  %3877 = landingpad { ptr, i32 }
          cleanup
  %3878 = extractvalue { ptr, i32 } %3877, 0
  store ptr %3878, ptr %5, align 8
  %3879 = extractvalue { ptr, i32 } %3877, 1
  store i32 %3879, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %228) #5
  br label %12015

3880:                                             ; preds = %3850
  %3881 = landingpad { ptr, i32 }
          cleanup
  %3882 = extractvalue { ptr, i32 } %3881, 0
  store ptr %3882, ptr %5, align 8
  %3883 = extractvalue { ptr, i32 } %3881, 1
  store i32 %3883, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %229) #5
  br label %12015

3884:                                             ; preds = %3856
  %3885 = landingpad { ptr, i32 }
          cleanup
  %3886 = extractvalue { ptr, i32 } %3885, 0
  store ptr %3886, ptr %5, align 8
  %3887 = extractvalue { ptr, i32 } %3885, 1
  store i32 %3887, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %230) #5
  br label %12015

3888:                                             ; preds = %3862
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3889 unwind label %1026

3889:                                             ; preds = %3888
  br label %3855, !llvm.loop !54

3890:                                             ; preds = %3866
  %3891 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %3892 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3891, ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %3893 unwind label %1026

3893:                                             ; preds = %3890
  call void @llvm.lifetime.start.p0(i64 24, ptr %231) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %232) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %232, i32 noundef 0)
          to label %3894 unwind label %3921

3894:                                             ; preds = %3893
  %3895 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %232)
          to label %3896 unwind label %3925

3896:                                             ; preds = %3894
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %231, ptr noundef nonnull align 1 dereferenceable(1) %3895)
          to label %3897 unwind label %3925

3897:                                             ; preds = %3896
  %3898 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %3899 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3898, ptr noundef nonnull align 8 dereferenceable(24) %231)
          to label %3900 unwind label %3929

3900:                                             ; preds = %3897
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %231) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %232) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %232) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %231) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %233) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %233, i32 noundef 1)
          to label %3901 unwind label %3935

3901:                                             ; preds = %3900
  %3902 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %3903 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3902, ptr noundef nonnull align 8 dereferenceable(24) %233)
          to label %3904 unwind label %3939

3904:                                             ; preds = %3901
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %233) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %233) #5
  %3905 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %3906 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3905, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %3907 unwind label %1026

3907:                                             ; preds = %3904
  call void @llvm.lifetime.start.p0(i64 1, ptr %234) #5
  store i8 1, ptr %234, align 1, !tbaa !9
  %3908 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %3909 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3908, ptr noundef nonnull align 1 dereferenceable(1) %234)
          to label %3910 unwind label %3944

3910:                                             ; preds = %3907
  call void @llvm.lifetime.end.p0(i64 1, ptr %234) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3911 unwind label %1026

3911:                                             ; preds = %3910
  br label %3912

3912:                                             ; preds = %3920, %3911
  %3913 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %3914 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %3913)
          to label %3915 unwind label %1026

3915:                                             ; preds = %3912
  %3916 = load i8, ptr %3914, align 1, !tbaa !9, !range !11, !noundef !12
  %3917 = trunc i8 %3916 to i1
  %3918 = xor i1 %3917, true
  br i1 %3918, label %3919, label %3948

3919:                                             ; preds = %3915
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3920 unwind label %1026

3920:                                             ; preds = %3919
  br label %3912, !llvm.loop !55

3921:                                             ; preds = %3893
  %3922 = landingpad { ptr, i32 }
          cleanup
  %3923 = extractvalue { ptr, i32 } %3922, 0
  store ptr %3923, ptr %5, align 8
  %3924 = extractvalue { ptr, i32 } %3922, 1
  store i32 %3924, ptr %6, align 4
  br label %3934

3925:                                             ; preds = %3896, %3894
  %3926 = landingpad { ptr, i32 }
          cleanup
  %3927 = extractvalue { ptr, i32 } %3926, 0
  store ptr %3927, ptr %5, align 8
  %3928 = extractvalue { ptr, i32 } %3926, 1
  store i32 %3928, ptr %6, align 4
  br label %3933

3929:                                             ; preds = %3897
  %3930 = landingpad { ptr, i32 }
          cleanup
  %3931 = extractvalue { ptr, i32 } %3930, 0
  store ptr %3931, ptr %5, align 8
  %3932 = extractvalue { ptr, i32 } %3930, 1
  store i32 %3932, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %231) #5
  br label %3933

3933:                                             ; preds = %3929, %3925
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %232) #5
  br label %3934

3934:                                             ; preds = %3933, %3921
  call void @llvm.lifetime.end.p0(i64 24, ptr %232) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %231) #5
  br label %12015

3935:                                             ; preds = %3900
  %3936 = landingpad { ptr, i32 }
          cleanup
  %3937 = extractvalue { ptr, i32 } %3936, 0
  store ptr %3937, ptr %5, align 8
  %3938 = extractvalue { ptr, i32 } %3936, 1
  store i32 %3938, ptr %6, align 4
  br label %3943

3939:                                             ; preds = %3901
  %3940 = landingpad { ptr, i32 }
          cleanup
  %3941 = extractvalue { ptr, i32 } %3940, 0
  store ptr %3941, ptr %5, align 8
  %3942 = extractvalue { ptr, i32 } %3940, 1
  store i32 %3942, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %233) #5
  br label %3943

3943:                                             ; preds = %3939, %3935
  call void @llvm.lifetime.end.p0(i64 24, ptr %233) #5
  br label %12015

3944:                                             ; preds = %3907
  %3945 = landingpad { ptr, i32 }
          cleanup
  %3946 = extractvalue { ptr, i32 } %3945, 0
  store ptr %3946, ptr %5, align 8
  %3947 = extractvalue { ptr, i32 } %3945, 1
  store i32 %3947, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %234) #5
  br label %12015

3948:                                             ; preds = %3915
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3949 unwind label %1026

3949:                                             ; preds = %3948
  call void @llvm.lifetime.start.p0(i64 1, ptr %235) #5
  store i8 0, ptr %235, align 1, !tbaa !9
  %3950 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %3951 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3950, ptr noundef nonnull align 1 dereferenceable(1) %235)
          to label %3952 unwind label %3954

3952:                                             ; preds = %3949
  call void @llvm.lifetime.end.p0(i64 1, ptr %235) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3953 unwind label %1026

3953:                                             ; preds = %3952
  br label %3958

3954:                                             ; preds = %3949
  %3955 = landingpad { ptr, i32 }
          cleanup
  %3956 = extractvalue { ptr, i32 } %3955, 0
  store ptr %3956, ptr %5, align 8
  %3957 = extractvalue { ptr, i32 } %3955, 1
  store i32 %3957, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %235) #5
  br label %12015

3958:                                             ; preds = %3953, %3578
  br label %11913

3959:                                             ; preds = %2780
  %3960 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
          to label %3961 unwind label %1026

3961:                                             ; preds = %3959
  %3962 = icmp ne i64 %3960, 3
  br i1 %3962, label %3967, label %3963

3963:                                             ; preds = %3961
  %3964 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %15)
          to label %3965 unwind label %1026

3965:                                             ; preds = %3963
  %3966 = icmp eq i64 %3964, 0
  br i1 %3966, label %3967, label %3971

3967:                                             ; preds = %3965, %3961
  %3968 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 1)
          to label %3969 unwind label %1026

3969:                                             ; preds = %3967
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3970 unwind label %1026

3970:                                             ; preds = %3969
  br label %4184

3971:                                             ; preds = %3965
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3972 unwind label %1026

3972:                                             ; preds = %3971
  %3973 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %33, ptr noundef nonnull align 8 dereferenceable(24) %33)
          to label %3974 unwind label %1026

3974:                                             ; preds = %3972
  %3975 = load i8, ptr %34, align 1, !tbaa !9, !range !11, !noundef !12
  %3976 = trunc i8 %3975 to i1
  %3977 = zext i1 %3976 to i8
  store i8 %3977, ptr %34, align 1, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %236) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %236, i32 noundef 10)
          to label %3978 unwind label %4013

3978:                                             ; preds = %3974
  %3979 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %236)
          to label %3980 unwind label %4017

3980:                                             ; preds = %3978
  %3981 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %3979)
          to label %3982 unwind label %4017

3982:                                             ; preds = %3980
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %236) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %236) #5
  %3983 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %3984 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3983, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %3985 unwind label %1026

3985:                                             ; preds = %3982
  %3986 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %3987 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %3986, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %3988 unwind label %1026

3988:                                             ; preds = %3985
  call void @llvm.lifetime.start.p0(i64 1, ptr %237) #5
  store i8 1, ptr %237, align 1, !tbaa !9
  %3989 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %3990 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3989, ptr noundef nonnull align 1 dereferenceable(1) %237)
          to label %3991 unwind label %4022

3991:                                             ; preds = %3988
  call void @llvm.lifetime.end.p0(i64 1, ptr %237) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %238) #5
  store i8 1, ptr %238, align 1, !tbaa !9
  %3992 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %3993 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %3992, ptr noundef nonnull align 1 dereferenceable(1) %238)
          to label %3994 unwind label %4026

3994:                                             ; preds = %3991
  call void @llvm.lifetime.end.p0(i64 1, ptr %238) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %3995 unwind label %1026

3995:                                             ; preds = %3994
  br label %3996

3996:                                             ; preds = %4035, %3995
  br label %3997

3997:                                             ; preds = %3996
  %3998 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %3999 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %3998)
          to label %4000 unwind label %1026

4000:                                             ; preds = %3997
  %4001 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %3999)
          to label %4002 unwind label %1026

4002:                                             ; preds = %4000
  call void @llvm.lifetime.start.p0(i64 1, ptr %239) #5
  store i8 0, ptr %239, align 1, !tbaa !9
  %4003 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4004 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4003, ptr noundef nonnull align 1 dereferenceable(1) %239)
          to label %4005 unwind label %4030

4005:                                             ; preds = %4002
  call void @llvm.lifetime.end.p0(i64 1, ptr %239) #5
  %4006 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %4007 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4006)
          to label %4008 unwind label %1026

4008:                                             ; preds = %4005
  %4009 = load i8, ptr %4007, align 1, !tbaa !9, !range !11, !noundef !12
  %4010 = trunc i8 %4009 to i1
  br i1 %4010, label %4011, label %4034

4011:                                             ; preds = %4008
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4012 unwind label %1026

4012:                                             ; preds = %4011
  br label %4036

4013:                                             ; preds = %3974
  %4014 = landingpad { ptr, i32 }
          cleanup
  %4015 = extractvalue { ptr, i32 } %4014, 0
  store ptr %4015, ptr %5, align 8
  %4016 = extractvalue { ptr, i32 } %4014, 1
  store i32 %4016, ptr %6, align 4
  br label %4021

4017:                                             ; preds = %3980, %3978
  %4018 = landingpad { ptr, i32 }
          cleanup
  %4019 = extractvalue { ptr, i32 } %4018, 0
  store ptr %4019, ptr %5, align 8
  %4020 = extractvalue { ptr, i32 } %4018, 1
  store i32 %4020, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %236) #5
  br label %4021

4021:                                             ; preds = %4017, %4013
  call void @llvm.lifetime.end.p0(i64 24, ptr %236) #5
  br label %12015

4022:                                             ; preds = %3988
  %4023 = landingpad { ptr, i32 }
          cleanup
  %4024 = extractvalue { ptr, i32 } %4023, 0
  store ptr %4024, ptr %5, align 8
  %4025 = extractvalue { ptr, i32 } %4023, 1
  store i32 %4025, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %237) #5
  br label %12015

4026:                                             ; preds = %3991
  %4027 = landingpad { ptr, i32 }
          cleanup
  %4028 = extractvalue { ptr, i32 } %4027, 0
  store ptr %4028, ptr %5, align 8
  %4029 = extractvalue { ptr, i32 } %4027, 1
  store i32 %4029, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %238) #5
  br label %12015

4030:                                             ; preds = %4002
  %4031 = landingpad { ptr, i32 }
          cleanup
  %4032 = extractvalue { ptr, i32 } %4031, 0
  store ptr %4032, ptr %5, align 8
  %4033 = extractvalue { ptr, i32 } %4031, 1
  store i32 %4033, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %239) #5
  br label %12015

4034:                                             ; preds = %4008
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4035 unwind label %1026

4035:                                             ; preds = %4034
  br label %3996, !llvm.loop !56

4036:                                             ; preds = %4012
  %4037 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 7, i32 noundef 0)
          to label %4038 unwind label %1026

4038:                                             ; preds = %4036
  %4039 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %25, ptr noundef nonnull align 8 dereferenceable(28) %4037)
          to label %4040 unwind label %1026

4040:                                             ; preds = %4038
  %4041 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 0)
          to label %4042 unwind label %1026

4042:                                             ; preds = %4040
  %4043 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %4041)
          to label %4044 unwind label %1026

4044:                                             ; preds = %4042
  %4045 = icmp eq i64 %4043, 1
  br i1 %4045, label %4046, label %4085

4046:                                             ; preds = %4044
  call void @llvm.lifetime.start.p0(i64 24, ptr %240) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %240, i32 noundef 2)
          to label %4047 unwind label %4067

4047:                                             ; preds = %4046
  %4048 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %25, i32 noundef 4, i32 noundef 0)
          to label %4049 unwind label %4071

4049:                                             ; preds = %4047
  %4050 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %240, ptr noundef nonnull align 8 dereferenceable(8) %4048)
          to label %4051 unwind label %4071

4051:                                             ; preds = %4049
  %4052 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %25, ptr noundef nonnull align 1 dereferenceable(1) %4050)
          to label %4053 unwind label %4071

4053:                                             ; preds = %4051
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %240) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %240) #5
  %4054 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 10)
          to label %4055 unwind label %1026

4055:                                             ; preds = %4053
  call void @llvm.lifetime.start.p0(i64 24, ptr %241) #5
  invoke void @_ZN5sc_dt6sc_intILi9EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %241, i32 noundef 4)
          to label %4056 unwind label %4076

4056:                                             ; preds = %4055
  %4057 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %25, i32 noundef 4, i32 noundef 0)
          to label %4058 unwind label %4080

4058:                                             ; preds = %4056
  %4059 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %241, ptr noundef nonnull align 8 dereferenceable(8) %4057)
          to label %4060 unwind label %4080

4060:                                             ; preds = %4058
  %4061 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %9, ptr noundef nonnull align 1 dereferenceable(1) %4059)
          to label %4062 unwind label %4080

4062:                                             ; preds = %4060
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %241) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %241) #5
  %4063 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %10, i32 noundef 9)
          to label %4064 unwind label %1026

4064:                                             ; preds = %4062
  %4065 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 272)
          to label %4066 unwind label %1026

4066:                                             ; preds = %4064
  br label %4124

4067:                                             ; preds = %4046
  %4068 = landingpad { ptr, i32 }
          cleanup
  %4069 = extractvalue { ptr, i32 } %4068, 0
  store ptr %4069, ptr %5, align 8
  %4070 = extractvalue { ptr, i32 } %4068, 1
  store i32 %4070, ptr %6, align 4
  br label %4075

4071:                                             ; preds = %4051, %4049, %4047
  %4072 = landingpad { ptr, i32 }
          cleanup
  %4073 = extractvalue { ptr, i32 } %4072, 0
  store ptr %4073, ptr %5, align 8
  %4074 = extractvalue { ptr, i32 } %4072, 1
  store i32 %4074, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %240) #5
  br label %4075

4075:                                             ; preds = %4071, %4067
  call void @llvm.lifetime.end.p0(i64 24, ptr %240) #5
  br label %12015

4076:                                             ; preds = %4055
  %4077 = landingpad { ptr, i32 }
          cleanup
  %4078 = extractvalue { ptr, i32 } %4077, 0
  store ptr %4078, ptr %5, align 8
  %4079 = extractvalue { ptr, i32 } %4077, 1
  store i32 %4079, ptr %6, align 4
  br label %4084

4080:                                             ; preds = %4060, %4058, %4056
  %4081 = landingpad { ptr, i32 }
          cleanup
  %4082 = extractvalue { ptr, i32 } %4081, 0
  store ptr %4082, ptr %5, align 8
  %4083 = extractvalue { ptr, i32 } %4081, 1
  store i32 %4083, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %241) #5
  br label %4084

4084:                                             ; preds = %4080, %4076
  call void @llvm.lifetime.end.p0(i64 24, ptr %241) #5
  br label %12015

4085:                                             ; preds = %4044
  call void @llvm.lifetime.start.p0(i64 24, ptr %242) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %242, i32 noundef 3)
          to label %4086 unwind label %4106

4086:                                             ; preds = %4085
  %4087 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %25, i32 noundef 4, i32 noundef 0)
          to label %4088 unwind label %4110

4088:                                             ; preds = %4086
  %4089 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %242, ptr noundef nonnull align 8 dereferenceable(8) %4087)
          to label %4090 unwind label %4110

4090:                                             ; preds = %4088
  %4091 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %25, ptr noundef nonnull align 1 dereferenceable(1) %4089)
          to label %4092 unwind label %4110

4092:                                             ; preds = %4090
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %242) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %242) #5
  %4093 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 11)
          to label %4094 unwind label %1026

4094:                                             ; preds = %4092
  call void @llvm.lifetime.start.p0(i64 24, ptr %243) #5
  invoke void @_ZN5sc_dt6sc_intILi9EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %243, i32 noundef 5)
          to label %4095 unwind label %4115

4095:                                             ; preds = %4094
  %4096 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %25, i32 noundef 4, i32 noundef 0)
          to label %4097 unwind label %4119

4097:                                             ; preds = %4095
  %4098 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %243, ptr noundef nonnull align 8 dereferenceable(8) %4096)
          to label %4099 unwind label %4119

4099:                                             ; preds = %4097
  %4100 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %9, ptr noundef nonnull align 1 dereferenceable(1) %4098)
          to label %4101 unwind label %4119

4101:                                             ; preds = %4099
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %243) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %243) #5
  %4102 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %10, i32 noundef 17)
          to label %4103 unwind label %1026

4103:                                             ; preds = %4101
  %4104 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 288)
          to label %4105 unwind label %1026

4105:                                             ; preds = %4103
  br label %4124

4106:                                             ; preds = %4085
  %4107 = landingpad { ptr, i32 }
          cleanup
  %4108 = extractvalue { ptr, i32 } %4107, 0
  store ptr %4108, ptr %5, align 8
  %4109 = extractvalue { ptr, i32 } %4107, 1
  store i32 %4109, ptr %6, align 4
  br label %4114

4110:                                             ; preds = %4090, %4088, %4086
  %4111 = landingpad { ptr, i32 }
          cleanup
  %4112 = extractvalue { ptr, i32 } %4111, 0
  store ptr %4112, ptr %5, align 8
  %4113 = extractvalue { ptr, i32 } %4111, 1
  store i32 %4113, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %242) #5
  br label %4114

4114:                                             ; preds = %4110, %4106
  call void @llvm.lifetime.end.p0(i64 24, ptr %242) #5
  br label %12015

4115:                                             ; preds = %4094
  %4116 = landingpad { ptr, i32 }
          cleanup
  %4117 = extractvalue { ptr, i32 } %4116, 0
  store ptr %4117, ptr %5, align 8
  %4118 = extractvalue { ptr, i32 } %4116, 1
  store i32 %4118, ptr %6, align 4
  br label %4123

4119:                                             ; preds = %4099, %4097, %4095
  %4120 = landingpad { ptr, i32 }
          cleanup
  %4121 = extractvalue { ptr, i32 } %4120, 0
  store ptr %4121, ptr %5, align 8
  %4122 = extractvalue { ptr, i32 } %4120, 1
  store i32 %4122, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %243) #5
  br label %4123

4123:                                             ; preds = %4119, %4115
  call void @llvm.lifetime.end.p0(i64 24, ptr %243) #5
  br label %12015

4124:                                             ; preds = %4105, %4066
  call void @llvm.lifetime.start.p0(i64 24, ptr %244) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %244, i32 noundef 11)
          to label %4125 unwind label %4160

4125:                                             ; preds = %4124
  %4126 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %244)
          to label %4127 unwind label %4164

4127:                                             ; preds = %4125
  %4128 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %4126)
          to label %4129 unwind label %4164

4129:                                             ; preds = %4127
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %244) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %244) #5
  %4130 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %4131 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4130, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4132 unwind label %1026

4132:                                             ; preds = %4129
  %4133 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %4134 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4133, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %4135 unwind label %1026

4135:                                             ; preds = %4132
  call void @llvm.lifetime.start.p0(i64 1, ptr %245) #5
  store i8 1, ptr %245, align 1, !tbaa !9
  %4136 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %4137 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4136, ptr noundef nonnull align 1 dereferenceable(1) %245)
          to label %4138 unwind label %4169

4138:                                             ; preds = %4135
  call void @llvm.lifetime.end.p0(i64 1, ptr %245) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %246) #5
  store i8 1, ptr %246, align 1, !tbaa !9
  %4139 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4140 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4139, ptr noundef nonnull align 1 dereferenceable(1) %246)
          to label %4141 unwind label %4173

4141:                                             ; preds = %4138
  call void @llvm.lifetime.end.p0(i64 1, ptr %246) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4142 unwind label %1026

4142:                                             ; preds = %4141
  br label %4143

4143:                                             ; preds = %4182, %4142
  br label %4144

4144:                                             ; preds = %4143
  %4145 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %4146 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %4145)
          to label %4147 unwind label %1026

4147:                                             ; preds = %4144
  %4148 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %4146)
          to label %4149 unwind label %1026

4149:                                             ; preds = %4147
  call void @llvm.lifetime.start.p0(i64 1, ptr %247) #5
  store i8 0, ptr %247, align 1, !tbaa !9
  %4150 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4151 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4150, ptr noundef nonnull align 1 dereferenceable(1) %247)
          to label %4152 unwind label %4177

4152:                                             ; preds = %4149
  call void @llvm.lifetime.end.p0(i64 1, ptr %247) #5
  %4153 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %4154 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4153)
          to label %4155 unwind label %1026

4155:                                             ; preds = %4152
  %4156 = load i8, ptr %4154, align 1, !tbaa !9, !range !11, !noundef !12
  %4157 = trunc i8 %4156 to i1
  br i1 %4157, label %4158, label %4181

4158:                                             ; preds = %4155
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4159 unwind label %1026

4159:                                             ; preds = %4158
  br label %4183

4160:                                             ; preds = %4124
  %4161 = landingpad { ptr, i32 }
          cleanup
  %4162 = extractvalue { ptr, i32 } %4161, 0
  store ptr %4162, ptr %5, align 8
  %4163 = extractvalue { ptr, i32 } %4161, 1
  store i32 %4163, ptr %6, align 4
  br label %4168

4164:                                             ; preds = %4127, %4125
  %4165 = landingpad { ptr, i32 }
          cleanup
  %4166 = extractvalue { ptr, i32 } %4165, 0
  store ptr %4166, ptr %5, align 8
  %4167 = extractvalue { ptr, i32 } %4165, 1
  store i32 %4167, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %244) #5
  br label %4168

4168:                                             ; preds = %4164, %4160
  call void @llvm.lifetime.end.p0(i64 24, ptr %244) #5
  br label %12015

4169:                                             ; preds = %4135
  %4170 = landingpad { ptr, i32 }
          cleanup
  %4171 = extractvalue { ptr, i32 } %4170, 0
  store ptr %4171, ptr %5, align 8
  %4172 = extractvalue { ptr, i32 } %4170, 1
  store i32 %4172, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %245) #5
  br label %12015

4173:                                             ; preds = %4138
  %4174 = landingpad { ptr, i32 }
          cleanup
  %4175 = extractvalue { ptr, i32 } %4174, 0
  store ptr %4175, ptr %5, align 8
  %4176 = extractvalue { ptr, i32 } %4174, 1
  store i32 %4176, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %246) #5
  br label %12015

4177:                                             ; preds = %4149
  %4178 = landingpad { ptr, i32 }
          cleanup
  %4179 = extractvalue { ptr, i32 } %4178, 0
  store ptr %4179, ptr %5, align 8
  %4180 = extractvalue { ptr, i32 } %4178, 1
  store i32 %4180, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %247) #5
  br label %12015

4181:                                             ; preds = %4155
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4182 unwind label %1026

4182:                                             ; preds = %4181
  br label %4143, !llvm.loop !57

4183:                                             ; preds = %4159
  br label %4184

4184:                                             ; preds = %4183, %3970
  %4185 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %4)
          to label %4186 unwind label %1026

4186:                                             ; preds = %4184
  %4187 = trunc i64 %4185 to i32
  %4188 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi32EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %36, i32 noundef %4187)
          to label %4189 unwind label %1026

4189:                                             ; preds = %4186
  %4190 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %36)
          to label %4191 unwind label %1026

4191:                                             ; preds = %4189
  %4192 = trunc i64 %4190 to i32
  switch i32 %4192, label %5088 [
    i32 1, label %4193
    i32 2, label %4298
    i32 3, label %4403
    i32 4, label %4507
  ]

4193:                                             ; preds = %4191
  store i8 1, ptr %34, align 1, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %248) #5
  invoke void @_ZN5sc_dt6sc_intILi6EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %248, i32 noundef 0)
          to label %4194 unwind label %4229

4194:                                             ; preds = %4193
  %4195 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %248, ptr noundef nonnull align 8 dereferenceable(8) %25)
          to label %4196 unwind label %4233

4196:                                             ; preds = %4194
  %4197 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %4195)
          to label %4198 unwind label %4233

4198:                                             ; preds = %4196
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %248) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %248) #5
  %4199 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %4200 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4199, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4201 unwind label %1026

4201:                                             ; preds = %4198
  %4202 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %4203 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4202, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %4204 unwind label %1026

4204:                                             ; preds = %4201
  call void @llvm.lifetime.start.p0(i64 1, ptr %249) #5
  store i8 1, ptr %249, align 1, !tbaa !9
  %4205 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %4206 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4205, ptr noundef nonnull align 1 dereferenceable(1) %249)
          to label %4207 unwind label %4238

4207:                                             ; preds = %4204
  call void @llvm.lifetime.end.p0(i64 1, ptr %249) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %250) #5
  store i8 1, ptr %250, align 1, !tbaa !9
  %4208 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4209 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4208, ptr noundef nonnull align 1 dereferenceable(1) %250)
          to label %4210 unwind label %4242

4210:                                             ; preds = %4207
  call void @llvm.lifetime.end.p0(i64 1, ptr %250) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4211 unwind label %1026

4211:                                             ; preds = %4210
  br label %4212

4212:                                             ; preds = %4251, %4211
  br label %4213

4213:                                             ; preds = %4212
  %4214 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %4215 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %4214)
          to label %4216 unwind label %1026

4216:                                             ; preds = %4213
  %4217 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %4215)
          to label %4218 unwind label %1026

4218:                                             ; preds = %4216
  call void @llvm.lifetime.start.p0(i64 1, ptr %251) #5
  store i8 0, ptr %251, align 1, !tbaa !9
  %4219 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4220 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4219, ptr noundef nonnull align 1 dereferenceable(1) %251)
          to label %4221 unwind label %4246

4221:                                             ; preds = %4218
  call void @llvm.lifetime.end.p0(i64 1, ptr %251) #5
  %4222 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %4223 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4222)
          to label %4224 unwind label %1026

4224:                                             ; preds = %4221
  %4225 = load i8, ptr %4223, align 1, !tbaa !9, !range !11, !noundef !12
  %4226 = trunc i8 %4225 to i1
  br i1 %4226, label %4227, label %4250

4227:                                             ; preds = %4224
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4228 unwind label %1026

4228:                                             ; preds = %4227
  br label %4252

4229:                                             ; preds = %4193
  %4230 = landingpad { ptr, i32 }
          cleanup
  %4231 = extractvalue { ptr, i32 } %4230, 0
  store ptr %4231, ptr %5, align 8
  %4232 = extractvalue { ptr, i32 } %4230, 1
  store i32 %4232, ptr %6, align 4
  br label %4237

4233:                                             ; preds = %4196, %4194
  %4234 = landingpad { ptr, i32 }
          cleanup
  %4235 = extractvalue { ptr, i32 } %4234, 0
  store ptr %4235, ptr %5, align 8
  %4236 = extractvalue { ptr, i32 } %4234, 1
  store i32 %4236, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %248) #5
  br label %4237

4237:                                             ; preds = %4233, %4229
  call void @llvm.lifetime.end.p0(i64 24, ptr %248) #5
  br label %12015

4238:                                             ; preds = %4204
  %4239 = landingpad { ptr, i32 }
          cleanup
  %4240 = extractvalue { ptr, i32 } %4239, 0
  store ptr %4240, ptr %5, align 8
  %4241 = extractvalue { ptr, i32 } %4239, 1
  store i32 %4241, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %249) #5
  br label %12015

4242:                                             ; preds = %4207
  %4243 = landingpad { ptr, i32 }
          cleanup
  %4244 = extractvalue { ptr, i32 } %4243, 0
  store ptr %4244, ptr %5, align 8
  %4245 = extractvalue { ptr, i32 } %4243, 1
  store i32 %4245, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %250) #5
  br label %12015

4246:                                             ; preds = %4218
  %4247 = landingpad { ptr, i32 }
          cleanup
  %4248 = extractvalue { ptr, i32 } %4247, 0
  store ptr %4248, ptr %5, align 8
  %4249 = extractvalue { ptr, i32 } %4247, 1
  store i32 %4249, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %251) #5
  br label %12015

4250:                                             ; preds = %4224
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4251 unwind label %1026

4251:                                             ; preds = %4250
  br label %4212, !llvm.loop !58

4252:                                             ; preds = %4228
  %4253 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %4)
          to label %4254 unwind label %1026

4254:                                             ; preds = %4252
  %4255 = or i64 %4253, 2
  %4256 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %3, i64 noundef %4255)
          to label %4257 unwind label %1026

4257:                                             ; preds = %4254
  %4258 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %4259 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4258, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4260 unwind label %1026

4260:                                             ; preds = %4257
  %4261 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %4262 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4261, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %4263 unwind label %1026

4263:                                             ; preds = %4260
  call void @llvm.lifetime.start.p0(i64 1, ptr %252) #5
  store i8 0, ptr %252, align 1, !tbaa !9
  %4264 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %4265 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4264, ptr noundef nonnull align 1 dereferenceable(1) %252)
          to label %4266 unwind label %4283

4266:                                             ; preds = %4263
  call void @llvm.lifetime.end.p0(i64 1, ptr %252) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %253) #5
  store i8 1, ptr %253, align 1, !tbaa !9
  %4267 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4268 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4267, ptr noundef nonnull align 1 dereferenceable(1) %253)
          to label %4269 unwind label %4287

4269:                                             ; preds = %4266
  call void @llvm.lifetime.end.p0(i64 1, ptr %253) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4270 unwind label %1026

4270:                                             ; preds = %4269
  br label %4271

4271:                                             ; preds = %4296, %4270
  br label %4272

4272:                                             ; preds = %4271
  call void @llvm.lifetime.start.p0(i64 1, ptr %254) #5
  store i8 0, ptr %254, align 1, !tbaa !9
  %4273 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4274 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4273, ptr noundef nonnull align 1 dereferenceable(1) %254)
          to label %4275 unwind label %4291

4275:                                             ; preds = %4272
  call void @llvm.lifetime.end.p0(i64 1, ptr %254) #5
  %4276 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %4277 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4276)
          to label %4278 unwind label %1026

4278:                                             ; preds = %4275
  %4279 = load i8, ptr %4277, align 1, !tbaa !9, !range !11, !noundef !12
  %4280 = trunc i8 %4279 to i1
  br i1 %4280, label %4281, label %4295

4281:                                             ; preds = %4278
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4282 unwind label %1026

4282:                                             ; preds = %4281
  br label %4297

4283:                                             ; preds = %4263
  %4284 = landingpad { ptr, i32 }
          cleanup
  %4285 = extractvalue { ptr, i32 } %4284, 0
  store ptr %4285, ptr %5, align 8
  %4286 = extractvalue { ptr, i32 } %4284, 1
  store i32 %4286, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %252) #5
  br label %12015

4287:                                             ; preds = %4266
  %4288 = landingpad { ptr, i32 }
          cleanup
  %4289 = extractvalue { ptr, i32 } %4288, 0
  store ptr %4289, ptr %5, align 8
  %4290 = extractvalue { ptr, i32 } %4288, 1
  store i32 %4290, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %253) #5
  br label %12015

4291:                                             ; preds = %4272
  %4292 = landingpad { ptr, i32 }
          cleanup
  %4293 = extractvalue { ptr, i32 } %4292, 0
  store ptr %4293, ptr %5, align 8
  %4294 = extractvalue { ptr, i32 } %4292, 1
  store i32 %4294, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %254) #5
  br label %12015

4295:                                             ; preds = %4278
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4296 unwind label %1026

4296:                                             ; preds = %4295
  br label %4271, !llvm.loop !59

4297:                                             ; preds = %4282
  br label %5092

4298:                                             ; preds = %4191
  store i8 1, ptr %34, align 1, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %255) #5
  invoke void @_ZN5sc_dt6sc_intILi6EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %255, i32 noundef 0)
          to label %4299 unwind label %4334

4299:                                             ; preds = %4298
  %4300 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %255, ptr noundef nonnull align 8 dereferenceable(8) %25)
          to label %4301 unwind label %4338

4301:                                             ; preds = %4299
  %4302 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %4300)
          to label %4303 unwind label %4338

4303:                                             ; preds = %4301
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %255) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %255) #5
  %4304 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %4305 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4304, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4306 unwind label %1026

4306:                                             ; preds = %4303
  %4307 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %4308 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4307, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %4309 unwind label %1026

4309:                                             ; preds = %4306
  call void @llvm.lifetime.start.p0(i64 1, ptr %256) #5
  store i8 1, ptr %256, align 1, !tbaa !9
  %4310 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %4311 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4310, ptr noundef nonnull align 1 dereferenceable(1) %256)
          to label %4312 unwind label %4343

4312:                                             ; preds = %4309
  call void @llvm.lifetime.end.p0(i64 1, ptr %256) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %257) #5
  store i8 1, ptr %257, align 1, !tbaa !9
  %4313 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4314 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4313, ptr noundef nonnull align 1 dereferenceable(1) %257)
          to label %4315 unwind label %4347

4315:                                             ; preds = %4312
  call void @llvm.lifetime.end.p0(i64 1, ptr %257) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4316 unwind label %1026

4316:                                             ; preds = %4315
  br label %4317

4317:                                             ; preds = %4356, %4316
  br label %4318

4318:                                             ; preds = %4317
  %4319 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %4320 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %4319)
          to label %4321 unwind label %1026

4321:                                             ; preds = %4318
  %4322 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %4320)
          to label %4323 unwind label %1026

4323:                                             ; preds = %4321
  call void @llvm.lifetime.start.p0(i64 1, ptr %258) #5
  store i8 0, ptr %258, align 1, !tbaa !9
  %4324 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4325 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4324, ptr noundef nonnull align 1 dereferenceable(1) %258)
          to label %4326 unwind label %4351

4326:                                             ; preds = %4323
  call void @llvm.lifetime.end.p0(i64 1, ptr %258) #5
  %4327 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %4328 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4327)
          to label %4329 unwind label %1026

4329:                                             ; preds = %4326
  %4330 = load i8, ptr %4328, align 1, !tbaa !9, !range !11, !noundef !12
  %4331 = trunc i8 %4330 to i1
  br i1 %4331, label %4332, label %4355

4332:                                             ; preds = %4329
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4333 unwind label %1026

4333:                                             ; preds = %4332
  br label %4357

4334:                                             ; preds = %4298
  %4335 = landingpad { ptr, i32 }
          cleanup
  %4336 = extractvalue { ptr, i32 } %4335, 0
  store ptr %4336, ptr %5, align 8
  %4337 = extractvalue { ptr, i32 } %4335, 1
  store i32 %4337, ptr %6, align 4
  br label %4342

4338:                                             ; preds = %4301, %4299
  %4339 = landingpad { ptr, i32 }
          cleanup
  %4340 = extractvalue { ptr, i32 } %4339, 0
  store ptr %4340, ptr %5, align 8
  %4341 = extractvalue { ptr, i32 } %4339, 1
  store i32 %4341, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %255) #5
  br label %4342

4342:                                             ; preds = %4338, %4334
  call void @llvm.lifetime.end.p0(i64 24, ptr %255) #5
  br label %12015

4343:                                             ; preds = %4309
  %4344 = landingpad { ptr, i32 }
          cleanup
  %4345 = extractvalue { ptr, i32 } %4344, 0
  store ptr %4345, ptr %5, align 8
  %4346 = extractvalue { ptr, i32 } %4344, 1
  store i32 %4346, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %256) #5
  br label %12015

4347:                                             ; preds = %4312
  %4348 = landingpad { ptr, i32 }
          cleanup
  %4349 = extractvalue { ptr, i32 } %4348, 0
  store ptr %4349, ptr %5, align 8
  %4350 = extractvalue { ptr, i32 } %4348, 1
  store i32 %4350, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %257) #5
  br label %12015

4351:                                             ; preds = %4323
  %4352 = landingpad { ptr, i32 }
          cleanup
  %4353 = extractvalue { ptr, i32 } %4352, 0
  store ptr %4353, ptr %5, align 8
  %4354 = extractvalue { ptr, i32 } %4352, 1
  store i32 %4354, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %258) #5
  br label %12015

4355:                                             ; preds = %4329
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4356 unwind label %1026

4356:                                             ; preds = %4355
  br label %4317, !llvm.loop !60

4357:                                             ; preds = %4333
  %4358 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %4)
          to label %4359 unwind label %1026

4359:                                             ; preds = %4357
  %4360 = and i64 %4358, -3
  %4361 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %3, i64 noundef %4360)
          to label %4362 unwind label %1026

4362:                                             ; preds = %4359
  %4363 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %4364 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4363, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4365 unwind label %1026

4365:                                             ; preds = %4362
  %4366 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %4367 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4366, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %4368 unwind label %1026

4368:                                             ; preds = %4365
  call void @llvm.lifetime.start.p0(i64 1, ptr %259) #5
  store i8 0, ptr %259, align 1, !tbaa !9
  %4369 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %4370 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4369, ptr noundef nonnull align 1 dereferenceable(1) %259)
          to label %4371 unwind label %4388

4371:                                             ; preds = %4368
  call void @llvm.lifetime.end.p0(i64 1, ptr %259) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %260) #5
  store i8 1, ptr %260, align 1, !tbaa !9
  %4372 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4373 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4372, ptr noundef nonnull align 1 dereferenceable(1) %260)
          to label %4374 unwind label %4392

4374:                                             ; preds = %4371
  call void @llvm.lifetime.end.p0(i64 1, ptr %260) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4375 unwind label %1026

4375:                                             ; preds = %4374
  br label %4376

4376:                                             ; preds = %4401, %4375
  br label %4377

4377:                                             ; preds = %4376
  call void @llvm.lifetime.start.p0(i64 1, ptr %261) #5
  store i8 0, ptr %261, align 1, !tbaa !9
  %4378 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4379 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4378, ptr noundef nonnull align 1 dereferenceable(1) %261)
          to label %4380 unwind label %4396

4380:                                             ; preds = %4377
  call void @llvm.lifetime.end.p0(i64 1, ptr %261) #5
  %4381 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %4382 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4381)
          to label %4383 unwind label %1026

4383:                                             ; preds = %4380
  %4384 = load i8, ptr %4382, align 1, !tbaa !9, !range !11, !noundef !12
  %4385 = trunc i8 %4384 to i1
  br i1 %4385, label %4386, label %4400

4386:                                             ; preds = %4383
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4387 unwind label %1026

4387:                                             ; preds = %4386
  br label %4402

4388:                                             ; preds = %4368
  %4389 = landingpad { ptr, i32 }
          cleanup
  %4390 = extractvalue { ptr, i32 } %4389, 0
  store ptr %4390, ptr %5, align 8
  %4391 = extractvalue { ptr, i32 } %4389, 1
  store i32 %4391, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %259) #5
  br label %12015

4392:                                             ; preds = %4371
  %4393 = landingpad { ptr, i32 }
          cleanup
  %4394 = extractvalue { ptr, i32 } %4393, 0
  store ptr %4394, ptr %5, align 8
  %4395 = extractvalue { ptr, i32 } %4393, 1
  store i32 %4395, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %260) #5
  br label %12015

4396:                                             ; preds = %4377
  %4397 = landingpad { ptr, i32 }
          cleanup
  %4398 = extractvalue { ptr, i32 } %4397, 0
  store ptr %4398, ptr %5, align 8
  %4399 = extractvalue { ptr, i32 } %4397, 1
  store i32 %4399, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %261) #5
  br label %12015

4400:                                             ; preds = %4383
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4401 unwind label %1026

4401:                                             ; preds = %4400
  br label %4376, !llvm.loop !61

4402:                                             ; preds = %4387
  br label %5092

4403:                                             ; preds = %4191
  store i8 1, ptr %34, align 1, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %262) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %262, i32 noundef 12)
          to label %4404 unwind label %4439

4404:                                             ; preds = %4403
  %4405 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %262)
          to label %4406 unwind label %4443

4406:                                             ; preds = %4404
  %4407 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %4405)
          to label %4408 unwind label %4443

4408:                                             ; preds = %4406
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %262) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %262) #5
  %4409 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %4410 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4409, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4411 unwind label %1026

4411:                                             ; preds = %4408
  %4412 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %4413 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4412, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %4414 unwind label %1026

4414:                                             ; preds = %4411
  call void @llvm.lifetime.start.p0(i64 1, ptr %263) #5
  store i8 1, ptr %263, align 1, !tbaa !9
  %4415 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %4416 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4415, ptr noundef nonnull align 1 dereferenceable(1) %263)
          to label %4417 unwind label %4448

4417:                                             ; preds = %4414
  call void @llvm.lifetime.end.p0(i64 1, ptr %263) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %264) #5
  store i8 1, ptr %264, align 1, !tbaa !9
  %4418 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4419 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4418, ptr noundef nonnull align 1 dereferenceable(1) %264)
          to label %4420 unwind label %4452

4420:                                             ; preds = %4417
  call void @llvm.lifetime.end.p0(i64 1, ptr %264) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4421 unwind label %1026

4421:                                             ; preds = %4420
  br label %4422

4422:                                             ; preds = %4461, %4421
  br label %4423

4423:                                             ; preds = %4422
  %4424 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %4425 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %4424)
          to label %4426 unwind label %1026

4426:                                             ; preds = %4423
  %4427 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %4425)
          to label %4428 unwind label %1026

4428:                                             ; preds = %4426
  call void @llvm.lifetime.start.p0(i64 1, ptr %265) #5
  store i8 0, ptr %265, align 1, !tbaa !9
  %4429 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4430 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4429, ptr noundef nonnull align 1 dereferenceable(1) %265)
          to label %4431 unwind label %4456

4431:                                             ; preds = %4428
  call void @llvm.lifetime.end.p0(i64 1, ptr %265) #5
  %4432 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %4433 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4432)
          to label %4434 unwind label %1026

4434:                                             ; preds = %4431
  %4435 = load i8, ptr %4433, align 1, !tbaa !9, !range !11, !noundef !12
  %4436 = trunc i8 %4435 to i1
  br i1 %4436, label %4437, label %4460

4437:                                             ; preds = %4434
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4438 unwind label %1026

4438:                                             ; preds = %4437
  br label %4462

4439:                                             ; preds = %4403
  %4440 = landingpad { ptr, i32 }
          cleanup
  %4441 = extractvalue { ptr, i32 } %4440, 0
  store ptr %4441, ptr %5, align 8
  %4442 = extractvalue { ptr, i32 } %4440, 1
  store i32 %4442, ptr %6, align 4
  br label %4447

4443:                                             ; preds = %4406, %4404
  %4444 = landingpad { ptr, i32 }
          cleanup
  %4445 = extractvalue { ptr, i32 } %4444, 0
  store ptr %4445, ptr %5, align 8
  %4446 = extractvalue { ptr, i32 } %4444, 1
  store i32 %4446, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %262) #5
  br label %4447

4447:                                             ; preds = %4443, %4439
  call void @llvm.lifetime.end.p0(i64 24, ptr %262) #5
  br label %12015

4448:                                             ; preds = %4414
  %4449 = landingpad { ptr, i32 }
          cleanup
  %4450 = extractvalue { ptr, i32 } %4449, 0
  store ptr %4450, ptr %5, align 8
  %4451 = extractvalue { ptr, i32 } %4449, 1
  store i32 %4451, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %263) #5
  br label %12015

4452:                                             ; preds = %4417
  %4453 = landingpad { ptr, i32 }
          cleanup
  %4454 = extractvalue { ptr, i32 } %4453, 0
  store ptr %4454, ptr %5, align 8
  %4455 = extractvalue { ptr, i32 } %4453, 1
  store i32 %4455, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %264) #5
  br label %12015

4456:                                             ; preds = %4428
  %4457 = landingpad { ptr, i32 }
          cleanup
  %4458 = extractvalue { ptr, i32 } %4457, 0
  store ptr %4458, ptr %5, align 8
  %4459 = extractvalue { ptr, i32 } %4457, 1
  store i32 %4459, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %265) #5
  br label %12015

4460:                                             ; preds = %4434
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4461 unwind label %1026

4461:                                             ; preds = %4460
  br label %4422, !llvm.loop !62

4462:                                             ; preds = %4438
  %4463 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %4464 unwind label %1026

4464:                                             ; preds = %4462
  %4465 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %4)
          to label %4466 unwind label %1026

4466:                                             ; preds = %4464
  %4467 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %4468 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4467, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4469 unwind label %1026

4469:                                             ; preds = %4466
  %4470 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %4471 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4470, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %4472 unwind label %1026

4472:                                             ; preds = %4469
  call void @llvm.lifetime.start.p0(i64 1, ptr %266) #5
  store i8 0, ptr %266, align 1, !tbaa !9
  %4473 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %4474 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4473, ptr noundef nonnull align 1 dereferenceable(1) %266)
          to label %4475 unwind label %4492

4475:                                             ; preds = %4472
  call void @llvm.lifetime.end.p0(i64 1, ptr %266) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %267) #5
  store i8 1, ptr %267, align 1, !tbaa !9
  %4476 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4477 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4476, ptr noundef nonnull align 1 dereferenceable(1) %267)
          to label %4478 unwind label %4496

4478:                                             ; preds = %4475
  call void @llvm.lifetime.end.p0(i64 1, ptr %267) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4479 unwind label %1026

4479:                                             ; preds = %4478
  br label %4480

4480:                                             ; preds = %4505, %4479
  br label %4481

4481:                                             ; preds = %4480
  call void @llvm.lifetime.start.p0(i64 1, ptr %268) #5
  store i8 0, ptr %268, align 1, !tbaa !9
  %4482 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4483 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4482, ptr noundef nonnull align 1 dereferenceable(1) %268)
          to label %4484 unwind label %4500

4484:                                             ; preds = %4481
  call void @llvm.lifetime.end.p0(i64 1, ptr %268) #5
  %4485 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %4486 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4485)
          to label %4487 unwind label %1026

4487:                                             ; preds = %4484
  %4488 = load i8, ptr %4486, align 1, !tbaa !9, !range !11, !noundef !12
  %4489 = trunc i8 %4488 to i1
  br i1 %4489, label %4490, label %4504

4490:                                             ; preds = %4487
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4491 unwind label %1026

4491:                                             ; preds = %4490
  br label %4506

4492:                                             ; preds = %4472
  %4493 = landingpad { ptr, i32 }
          cleanup
  %4494 = extractvalue { ptr, i32 } %4493, 0
  store ptr %4494, ptr %5, align 8
  %4495 = extractvalue { ptr, i32 } %4493, 1
  store i32 %4495, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %266) #5
  br label %12015

4496:                                             ; preds = %4475
  %4497 = landingpad { ptr, i32 }
          cleanup
  %4498 = extractvalue { ptr, i32 } %4497, 0
  store ptr %4498, ptr %5, align 8
  %4499 = extractvalue { ptr, i32 } %4497, 1
  store i32 %4499, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %267) #5
  br label %12015

4500:                                             ; preds = %4481
  %4501 = landingpad { ptr, i32 }
          cleanup
  %4502 = extractvalue { ptr, i32 } %4501, 0
  store ptr %4502, ptr %5, align 8
  %4503 = extractvalue { ptr, i32 } %4501, 1
  store i32 %4503, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %268) #5
  br label %12015

4504:                                             ; preds = %4487
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4505 unwind label %1026

4505:                                             ; preds = %4504
  br label %4480, !llvm.loop !63

4506:                                             ; preds = %4491
  br label %5092

4507:                                             ; preds = %4191
  %4508 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 8 dereferenceable(24) %10)
          to label %4509 unwind label %1026

4509:                                             ; preds = %4507
  %4510 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %4511 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4510, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4512 unwind label %1026

4512:                                             ; preds = %4509
  %4513 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %4514 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4513, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %4515 unwind label %1026

4515:                                             ; preds = %4512
  call void @llvm.lifetime.start.p0(i64 1, ptr %269) #5
  store i8 1, ptr %269, align 1, !tbaa !9
  %4516 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %4517 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4516, ptr noundef nonnull align 1 dereferenceable(1) %269)
          to label %4518 unwind label %4540

4518:                                             ; preds = %4515
  call void @llvm.lifetime.end.p0(i64 1, ptr %269) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %270) #5
  store i8 1, ptr %270, align 1, !tbaa !9
  %4519 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4520 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4519, ptr noundef nonnull align 1 dereferenceable(1) %270)
          to label %4521 unwind label %4544

4521:                                             ; preds = %4518
  call void @llvm.lifetime.end.p0(i64 1, ptr %270) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4522 unwind label %1026

4522:                                             ; preds = %4521
  br label %4523

4523:                                             ; preds = %4553, %4522
  br label %4524

4524:                                             ; preds = %4523
  %4525 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %4526 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %4525)
          to label %4527 unwind label %1026

4527:                                             ; preds = %4524
  %4528 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %4526)
          to label %4529 unwind label %1026

4529:                                             ; preds = %4527
  call void @llvm.lifetime.start.p0(i64 1, ptr %271) #5
  store i8 0, ptr %271, align 1, !tbaa !9
  %4530 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4531 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4530, ptr noundef nonnull align 1 dereferenceable(1) %271)
          to label %4532 unwind label %4548

4532:                                             ; preds = %4529
  call void @llvm.lifetime.end.p0(i64 1, ptr %271) #5
  %4533 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %4534 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4533)
          to label %4535 unwind label %1026

4535:                                             ; preds = %4532
  %4536 = load i8, ptr %4534, align 1, !tbaa !9, !range !11, !noundef !12
  %4537 = trunc i8 %4536 to i1
  br i1 %4537, label %4538, label %4552

4538:                                             ; preds = %4535
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4539 unwind label %1026

4539:                                             ; preds = %4538
  br label %4554

4540:                                             ; preds = %4515
  %4541 = landingpad { ptr, i32 }
          cleanup
  %4542 = extractvalue { ptr, i32 } %4541, 0
  store ptr %4542, ptr %5, align 8
  %4543 = extractvalue { ptr, i32 } %4541, 1
  store i32 %4543, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %269) #5
  br label %12015

4544:                                             ; preds = %4518
  %4545 = landingpad { ptr, i32 }
          cleanup
  %4546 = extractvalue { ptr, i32 } %4545, 0
  store ptr %4546, ptr %5, align 8
  %4547 = extractvalue { ptr, i32 } %4545, 1
  store i32 %4547, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %270) #5
  br label %12015

4548:                                             ; preds = %4529
  %4549 = landingpad { ptr, i32 }
          cleanup
  %4550 = extractvalue { ptr, i32 } %4549, 0
  store ptr %4550, ptr %5, align 8
  %4551 = extractvalue { ptr, i32 } %4549, 1
  store i32 %4551, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %271) #5
  br label %12015

4552:                                             ; preds = %4535
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4553 unwind label %1026

4553:                                             ; preds = %4552
  br label %4523, !llvm.loop !64

4554:                                             ; preds = %4539
  call void @llvm.lifetime.start.p0(i64 24, ptr %272) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %273) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %273, i32 noundef 0)
          to label %4555 unwind label %4593

4555:                                             ; preds = %4554
  %4556 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %273)
          to label %4557 unwind label %4597

4557:                                             ; preds = %4555
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %272, ptr noundef nonnull align 1 dereferenceable(1) %4556)
          to label %4558 unwind label %4597

4558:                                             ; preds = %4557
  %4559 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %4560 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4559, ptr noundef nonnull align 8 dereferenceable(24) %272)
          to label %4561 unwind label %4601

4561:                                             ; preds = %4558
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %272) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %273) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %273) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %272) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %274) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %274, i32 noundef 0)
          to label %4562 unwind label %4607

4562:                                             ; preds = %4561
  %4563 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %4564 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4563, ptr noundef nonnull align 8 dereferenceable(24) %274)
          to label %4565 unwind label %4611

4565:                                             ; preds = %4562
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %274) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %274) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %275) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %276) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %276, i32 noundef 0)
          to label %4566 unwind label %4616

4566:                                             ; preds = %4565
  %4567 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %276, ptr noundef nonnull align 8 dereferenceable(8) %15)
          to label %4568 unwind label %4620

4568:                                             ; preds = %4566
  call void @llvm.lifetime.start.p0(i64 24, ptr %277) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %277, i32 noundef 0)
          to label %4569 unwind label %4624

4569:                                             ; preds = %4568
  %4570 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %4567, ptr noundef nonnull align 8 dereferenceable(8) %277)
          to label %4571 unwind label %4628

4571:                                             ; preds = %4569
  invoke void @_ZN5sc_dt6sc_intILi7EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %275, ptr noundef nonnull align 1 dereferenceable(1) %4570)
          to label %4572 unwind label %4628

4572:                                             ; preds = %4571
  %4573 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %4574 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4573, ptr noundef nonnull align 8 dereferenceable(24) %275)
          to label %4575 unwind label %4632

4575:                                             ; preds = %4572
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %275) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %277) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %277) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %276) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %276) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %275) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %278) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %278, i32 noundef -3)
          to label %4576 unwind label %4640

4576:                                             ; preds = %4575
  %4577 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %4578 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4577, ptr noundef nonnull align 8 dereferenceable(24) %278)
          to label %4579 unwind label %4644

4579:                                             ; preds = %4576
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %278) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %278) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %279) #5
  store i8 1, ptr %279, align 1, !tbaa !9
  %4580 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %4581 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4580, ptr noundef nonnull align 1 dereferenceable(1) %279)
          to label %4582 unwind label %4649

4582:                                             ; preds = %4579
  call void @llvm.lifetime.end.p0(i64 1, ptr %279) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4583 unwind label %1026

4583:                                             ; preds = %4582
  br label %4584

4584:                                             ; preds = %4592, %4583
  %4585 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %4586 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %4585)
          to label %4587 unwind label %1026

4587:                                             ; preds = %4584
  %4588 = load i8, ptr %4586, align 1, !tbaa !9, !range !11, !noundef !12
  %4589 = trunc i8 %4588 to i1
  %4590 = xor i1 %4589, true
  br i1 %4590, label %4591, label %4653

4591:                                             ; preds = %4587
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4592 unwind label %1026

4592:                                             ; preds = %4591
  br label %4584, !llvm.loop !65

4593:                                             ; preds = %4554
  %4594 = landingpad { ptr, i32 }
          cleanup
  %4595 = extractvalue { ptr, i32 } %4594, 0
  store ptr %4595, ptr %5, align 8
  %4596 = extractvalue { ptr, i32 } %4594, 1
  store i32 %4596, ptr %6, align 4
  br label %4606

4597:                                             ; preds = %4557, %4555
  %4598 = landingpad { ptr, i32 }
          cleanup
  %4599 = extractvalue { ptr, i32 } %4598, 0
  store ptr %4599, ptr %5, align 8
  %4600 = extractvalue { ptr, i32 } %4598, 1
  store i32 %4600, ptr %6, align 4
  br label %4605

4601:                                             ; preds = %4558
  %4602 = landingpad { ptr, i32 }
          cleanup
  %4603 = extractvalue { ptr, i32 } %4602, 0
  store ptr %4603, ptr %5, align 8
  %4604 = extractvalue { ptr, i32 } %4602, 1
  store i32 %4604, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %272) #5
  br label %4605

4605:                                             ; preds = %4601, %4597
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %273) #5
  br label %4606

4606:                                             ; preds = %4605, %4593
  call void @llvm.lifetime.end.p0(i64 24, ptr %273) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %272) #5
  br label %12015

4607:                                             ; preds = %4561
  %4608 = landingpad { ptr, i32 }
          cleanup
  %4609 = extractvalue { ptr, i32 } %4608, 0
  store ptr %4609, ptr %5, align 8
  %4610 = extractvalue { ptr, i32 } %4608, 1
  store i32 %4610, ptr %6, align 4
  br label %4615

4611:                                             ; preds = %4562
  %4612 = landingpad { ptr, i32 }
          cleanup
  %4613 = extractvalue { ptr, i32 } %4612, 0
  store ptr %4613, ptr %5, align 8
  %4614 = extractvalue { ptr, i32 } %4612, 1
  store i32 %4614, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %274) #5
  br label %4615

4615:                                             ; preds = %4611, %4607
  call void @llvm.lifetime.end.p0(i64 24, ptr %274) #5
  br label %12015

4616:                                             ; preds = %4565
  %4617 = landingpad { ptr, i32 }
          cleanup
  %4618 = extractvalue { ptr, i32 } %4617, 0
  store ptr %4618, ptr %5, align 8
  %4619 = extractvalue { ptr, i32 } %4617, 1
  store i32 %4619, ptr %6, align 4
  br label %4639

4620:                                             ; preds = %4566
  %4621 = landingpad { ptr, i32 }
          cleanup
  %4622 = extractvalue { ptr, i32 } %4621, 0
  store ptr %4622, ptr %5, align 8
  %4623 = extractvalue { ptr, i32 } %4621, 1
  store i32 %4623, ptr %6, align 4
  br label %4638

4624:                                             ; preds = %4568
  %4625 = landingpad { ptr, i32 }
          cleanup
  %4626 = extractvalue { ptr, i32 } %4625, 0
  store ptr %4626, ptr %5, align 8
  %4627 = extractvalue { ptr, i32 } %4625, 1
  store i32 %4627, ptr %6, align 4
  br label %4637

4628:                                             ; preds = %4571, %4569
  %4629 = landingpad { ptr, i32 }
          cleanup
  %4630 = extractvalue { ptr, i32 } %4629, 0
  store ptr %4630, ptr %5, align 8
  %4631 = extractvalue { ptr, i32 } %4629, 1
  store i32 %4631, ptr %6, align 4
  br label %4636

4632:                                             ; preds = %4572
  %4633 = landingpad { ptr, i32 }
          cleanup
  %4634 = extractvalue { ptr, i32 } %4633, 0
  store ptr %4634, ptr %5, align 8
  %4635 = extractvalue { ptr, i32 } %4633, 1
  store i32 %4635, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %275) #5
  br label %4636

4636:                                             ; preds = %4632, %4628
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %277) #5
  br label %4637

4637:                                             ; preds = %4636, %4624
  call void @llvm.lifetime.end.p0(i64 24, ptr %277) #5
  br label %4638

4638:                                             ; preds = %4637, %4620
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %276) #5
  br label %4639

4639:                                             ; preds = %4638, %4616
  call void @llvm.lifetime.end.p0(i64 24, ptr %276) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %275) #5
  br label %12015

4640:                                             ; preds = %4575
  %4641 = landingpad { ptr, i32 }
          cleanup
  %4642 = extractvalue { ptr, i32 } %4641, 0
  store ptr %4642, ptr %5, align 8
  %4643 = extractvalue { ptr, i32 } %4641, 1
  store i32 %4643, ptr %6, align 4
  br label %4648

4644:                                             ; preds = %4576
  %4645 = landingpad { ptr, i32 }
          cleanup
  %4646 = extractvalue { ptr, i32 } %4645, 0
  store ptr %4646, ptr %5, align 8
  %4647 = extractvalue { ptr, i32 } %4645, 1
  store i32 %4647, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %278) #5
  br label %4648

4648:                                             ; preds = %4644, %4640
  call void @llvm.lifetime.end.p0(i64 24, ptr %278) #5
  br label %12015

4649:                                             ; preds = %4579
  %4650 = landingpad { ptr, i32 }
          cleanup
  %4651 = extractvalue { ptr, i32 } %4650, 0
  store ptr %4651, ptr %5, align 8
  %4652 = extractvalue { ptr, i32 } %4650, 1
  store i32 %4652, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %279) #5
  br label %12015

4653:                                             ; preds = %4587
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4654 unwind label %1026

4654:                                             ; preds = %4653
  call void @llvm.lifetime.start.p0(i64 1, ptr %280) #5
  store i8 0, ptr %280, align 1, !tbaa !9
  %4655 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %4656 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4655, ptr noundef nonnull align 1 dereferenceable(1) %280)
          to label %4657 unwind label %4687

4657:                                             ; preds = %4654
  call void @llvm.lifetime.end.p0(i64 1, ptr %280) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4658 unwind label %1026

4658:                                             ; preds = %4657
  call void @llvm.lifetime.start.p0(i64 24, ptr %281) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %281, i32 noundef 3779)
          to label %4659 unwind label %4691

4659:                                             ; preds = %4658
  %4660 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %4661 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4660, ptr noundef nonnull align 8 dereferenceable(24) %281)
          to label %4662 unwind label %4695

4662:                                             ; preds = %4659
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %281) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %281) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %282) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %282, i32 noundef 0)
          to label %4663 unwind label %4700

4663:                                             ; preds = %4662
  %4664 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %4665 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4664, ptr noundef nonnull align 8 dereferenceable(24) %282)
          to label %4666 unwind label %4704

4666:                                             ; preds = %4663
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %282) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %282) #5
  %4667 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %4668 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4667, ptr noundef nonnull align 8 dereferenceable(24) %27)
          to label %4669 unwind label %1026

4669:                                             ; preds = %4666
  call void @llvm.lifetime.start.p0(i64 24, ptr %283) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %283, i32 noundef -2)
          to label %4670 unwind label %4709

4670:                                             ; preds = %4669
  %4671 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %4672 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4671, ptr noundef nonnull align 8 dereferenceable(24) %283)
          to label %4673 unwind label %4713

4673:                                             ; preds = %4670
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %283) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %283) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %284) #5
  store i8 1, ptr %284, align 1, !tbaa !9
  %4674 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %4675 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4674, ptr noundef nonnull align 1 dereferenceable(1) %284)
          to label %4676 unwind label %4718

4676:                                             ; preds = %4673
  call void @llvm.lifetime.end.p0(i64 1, ptr %284) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4677 unwind label %1026

4677:                                             ; preds = %4676
  br label %4678

4678:                                             ; preds = %4686, %4677
  %4679 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %4680 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %4679)
          to label %4681 unwind label %1026

4681:                                             ; preds = %4678
  %4682 = load i8, ptr %4680, align 1, !tbaa !9, !range !11, !noundef !12
  %4683 = trunc i8 %4682 to i1
  %4684 = xor i1 %4683, true
  br i1 %4684, label %4685, label %4722

4685:                                             ; preds = %4681
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4686 unwind label %1026

4686:                                             ; preds = %4685
  br label %4678, !llvm.loop !66

4687:                                             ; preds = %4654
  %4688 = landingpad { ptr, i32 }
          cleanup
  %4689 = extractvalue { ptr, i32 } %4688, 0
  store ptr %4689, ptr %5, align 8
  %4690 = extractvalue { ptr, i32 } %4688, 1
  store i32 %4690, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %280) #5
  br label %12015

4691:                                             ; preds = %4658
  %4692 = landingpad { ptr, i32 }
          cleanup
  %4693 = extractvalue { ptr, i32 } %4692, 0
  store ptr %4693, ptr %5, align 8
  %4694 = extractvalue { ptr, i32 } %4692, 1
  store i32 %4694, ptr %6, align 4
  br label %4699

4695:                                             ; preds = %4659
  %4696 = landingpad { ptr, i32 }
          cleanup
  %4697 = extractvalue { ptr, i32 } %4696, 0
  store ptr %4697, ptr %5, align 8
  %4698 = extractvalue { ptr, i32 } %4696, 1
  store i32 %4698, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %281) #5
  br label %4699

4699:                                             ; preds = %4695, %4691
  call void @llvm.lifetime.end.p0(i64 24, ptr %281) #5
  br label %12015

4700:                                             ; preds = %4662
  %4701 = landingpad { ptr, i32 }
          cleanup
  %4702 = extractvalue { ptr, i32 } %4701, 0
  store ptr %4702, ptr %5, align 8
  %4703 = extractvalue { ptr, i32 } %4701, 1
  store i32 %4703, ptr %6, align 4
  br label %4708

4704:                                             ; preds = %4663
  %4705 = landingpad { ptr, i32 }
          cleanup
  %4706 = extractvalue { ptr, i32 } %4705, 0
  store ptr %4706, ptr %5, align 8
  %4707 = extractvalue { ptr, i32 } %4705, 1
  store i32 %4707, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %282) #5
  br label %4708

4708:                                             ; preds = %4704, %4700
  call void @llvm.lifetime.end.p0(i64 24, ptr %282) #5
  br label %12015

4709:                                             ; preds = %4669
  %4710 = landingpad { ptr, i32 }
          cleanup
  %4711 = extractvalue { ptr, i32 } %4710, 0
  store ptr %4711, ptr %5, align 8
  %4712 = extractvalue { ptr, i32 } %4710, 1
  store i32 %4712, ptr %6, align 4
  br label %4717

4713:                                             ; preds = %4670
  %4714 = landingpad { ptr, i32 }
          cleanup
  %4715 = extractvalue { ptr, i32 } %4714, 0
  store ptr %4715, ptr %5, align 8
  %4716 = extractvalue { ptr, i32 } %4714, 1
  store i32 %4716, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %283) #5
  br label %4717

4717:                                             ; preds = %4713, %4709
  call void @llvm.lifetime.end.p0(i64 24, ptr %283) #5
  br label %12015

4718:                                             ; preds = %4673
  %4719 = landingpad { ptr, i32 }
          cleanup
  %4720 = extractvalue { ptr, i32 } %4719, 0
  store ptr %4720, ptr %5, align 8
  %4721 = extractvalue { ptr, i32 } %4719, 1
  store i32 %4721, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %284) #5
  br label %12015

4722:                                             ; preds = %4681
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4723 unwind label %1026

4723:                                             ; preds = %4722
  call void @llvm.lifetime.start.p0(i64 1, ptr %285) #5
  store i8 0, ptr %285, align 1, !tbaa !9
  %4724 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %4725 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4724, ptr noundef nonnull align 1 dereferenceable(1) %285)
          to label %4726 unwind label %4766

4726:                                             ; preds = %4723
  call void @llvm.lifetime.end.p0(i64 1, ptr %285) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4727 unwind label %1026

4727:                                             ; preds = %4726
  call void @llvm.lifetime.start.p0(i64 24, ptr %286) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %286, i32 noundef 10)
          to label %4728 unwind label %4770

4728:                                             ; preds = %4727
  %4729 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %286)
          to label %4730 unwind label %4774

4730:                                             ; preds = %4728
  %4731 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %4729)
          to label %4732 unwind label %4774

4732:                                             ; preds = %4730
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %286) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %286) #5
  %4733 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 15, i32 noundef 5)
          to label %4734 unwind label %1026

4734:                                             ; preds = %4732
  %4735 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %25, i32 noundef 4, i32 noundef 0)
          to label %4736 unwind label %1026

4736:                                             ; preds = %4734
  %4737 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %4733, ptr noundef nonnull align 8 dereferenceable(8) %4735)
          to label %4738 unwind label %1026

4738:                                             ; preds = %4736
  %4739 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 1 dereferenceable(1) %4737)
          to label %4740 unwind label %1026

4740:                                             ; preds = %4738
  %4741 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %4742 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4741, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4743 unwind label %1026

4743:                                             ; preds = %4740
  %4744 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %4745 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4744, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %4746 unwind label %1026

4746:                                             ; preds = %4743
  call void @llvm.lifetime.start.p0(i64 1, ptr %287) #5
  store i8 0, ptr %287, align 1, !tbaa !9
  %4747 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %4748 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4747, ptr noundef nonnull align 1 dereferenceable(1) %287)
          to label %4749 unwind label %4779

4749:                                             ; preds = %4746
  call void @llvm.lifetime.end.p0(i64 1, ptr %287) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %288) #5
  store i8 1, ptr %288, align 1, !tbaa !9
  %4750 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4751 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4750, ptr noundef nonnull align 1 dereferenceable(1) %288)
          to label %4752 unwind label %4783

4752:                                             ; preds = %4749
  call void @llvm.lifetime.end.p0(i64 1, ptr %288) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4753 unwind label %1026

4753:                                             ; preds = %4752
  br label %4754

4754:                                             ; preds = %4792, %4753
  br label %4755

4755:                                             ; preds = %4754
  call void @llvm.lifetime.start.p0(i64 1, ptr %289) #5
  store i8 0, ptr %289, align 1, !tbaa !9
  %4756 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4757 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4756, ptr noundef nonnull align 1 dereferenceable(1) %289)
          to label %4758 unwind label %4787

4758:                                             ; preds = %4755
  call void @llvm.lifetime.end.p0(i64 1, ptr %289) #5
  %4759 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %4760 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4759)
          to label %4761 unwind label %1026

4761:                                             ; preds = %4758
  %4762 = load i8, ptr %4760, align 1, !tbaa !9, !range !11, !noundef !12
  %4763 = trunc i8 %4762 to i1
  br i1 %4763, label %4764, label %4791

4764:                                             ; preds = %4761
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4765 unwind label %1026

4765:                                             ; preds = %4764
  br label %4793

4766:                                             ; preds = %4723
  %4767 = landingpad { ptr, i32 }
          cleanup
  %4768 = extractvalue { ptr, i32 } %4767, 0
  store ptr %4768, ptr %5, align 8
  %4769 = extractvalue { ptr, i32 } %4767, 1
  store i32 %4769, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %285) #5
  br label %12015

4770:                                             ; preds = %4727
  %4771 = landingpad { ptr, i32 }
          cleanup
  %4772 = extractvalue { ptr, i32 } %4771, 0
  store ptr %4772, ptr %5, align 8
  %4773 = extractvalue { ptr, i32 } %4771, 1
  store i32 %4773, ptr %6, align 4
  br label %4778

4774:                                             ; preds = %4730, %4728
  %4775 = landingpad { ptr, i32 }
          cleanup
  %4776 = extractvalue { ptr, i32 } %4775, 0
  store ptr %4776, ptr %5, align 8
  %4777 = extractvalue { ptr, i32 } %4775, 1
  store i32 %4777, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %286) #5
  br label %4778

4778:                                             ; preds = %4774, %4770
  call void @llvm.lifetime.end.p0(i64 24, ptr %286) #5
  br label %12015

4779:                                             ; preds = %4746
  %4780 = landingpad { ptr, i32 }
          cleanup
  %4781 = extractvalue { ptr, i32 } %4780, 0
  store ptr %4781, ptr %5, align 8
  %4782 = extractvalue { ptr, i32 } %4780, 1
  store i32 %4782, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %287) #5
  br label %12015

4783:                                             ; preds = %4749
  %4784 = landingpad { ptr, i32 }
          cleanup
  %4785 = extractvalue { ptr, i32 } %4784, 0
  store ptr %4785, ptr %5, align 8
  %4786 = extractvalue { ptr, i32 } %4784, 1
  store i32 %4786, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %288) #5
  br label %12015

4787:                                             ; preds = %4755
  %4788 = landingpad { ptr, i32 }
          cleanup
  %4789 = extractvalue { ptr, i32 } %4788, 0
  store ptr %4789, ptr %5, align 8
  %4790 = extractvalue { ptr, i32 } %4788, 1
  store i32 %4790, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %289) #5
  br label %12015

4791:                                             ; preds = %4761
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4792 unwind label %1026

4792:                                             ; preds = %4791
  br label %4754, !llvm.loop !67

4793:                                             ; preds = %4765
  call void @llvm.lifetime.start.p0(i64 24, ptr %290) #5
  invoke void @_ZN5sc_dt6sc_intILi6EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %290, i32 noundef 0)
          to label %4794 unwind label %4829

4794:                                             ; preds = %4793
  %4795 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %290, ptr noundef nonnull align 8 dereferenceable(8) %25)
          to label %4796 unwind label %4833

4796:                                             ; preds = %4794
  %4797 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %4795)
          to label %4798 unwind label %4833

4798:                                             ; preds = %4796
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %290) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %290) #5
  %4799 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %4800 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4799, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4801 unwind label %1026

4801:                                             ; preds = %4798
  %4802 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %4803 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4802, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %4804 unwind label %1026

4804:                                             ; preds = %4801
  call void @llvm.lifetime.start.p0(i64 1, ptr %291) #5
  store i8 1, ptr %291, align 1, !tbaa !9
  %4805 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %4806 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4805, ptr noundef nonnull align 1 dereferenceable(1) %291)
          to label %4807 unwind label %4838

4807:                                             ; preds = %4804
  call void @llvm.lifetime.end.p0(i64 1, ptr %291) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %292) #5
  store i8 1, ptr %292, align 1, !tbaa !9
  %4808 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4809 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4808, ptr noundef nonnull align 1 dereferenceable(1) %292)
          to label %4810 unwind label %4842

4810:                                             ; preds = %4807
  call void @llvm.lifetime.end.p0(i64 1, ptr %292) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4811 unwind label %1026

4811:                                             ; preds = %4810
  br label %4812

4812:                                             ; preds = %4851, %4811
  br label %4813

4813:                                             ; preds = %4812
  %4814 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %4815 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %4814)
          to label %4816 unwind label %1026

4816:                                             ; preds = %4813
  %4817 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %4815)
          to label %4818 unwind label %1026

4818:                                             ; preds = %4816
  call void @llvm.lifetime.start.p0(i64 1, ptr %293) #5
  store i8 0, ptr %293, align 1, !tbaa !9
  %4819 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4820 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4819, ptr noundef nonnull align 1 dereferenceable(1) %293)
          to label %4821 unwind label %4846

4821:                                             ; preds = %4818
  call void @llvm.lifetime.end.p0(i64 1, ptr %293) #5
  %4822 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %4823 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4822)
          to label %4824 unwind label %1026

4824:                                             ; preds = %4821
  %4825 = load i8, ptr %4823, align 1, !tbaa !9, !range !11, !noundef !12
  %4826 = trunc i8 %4825 to i1
  br i1 %4826, label %4827, label %4850

4827:                                             ; preds = %4824
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4828 unwind label %1026

4828:                                             ; preds = %4827
  br label %4852

4829:                                             ; preds = %4793
  %4830 = landingpad { ptr, i32 }
          cleanup
  %4831 = extractvalue { ptr, i32 } %4830, 0
  store ptr %4831, ptr %5, align 8
  %4832 = extractvalue { ptr, i32 } %4830, 1
  store i32 %4832, ptr %6, align 4
  br label %4837

4833:                                             ; preds = %4796, %4794
  %4834 = landingpad { ptr, i32 }
          cleanup
  %4835 = extractvalue { ptr, i32 } %4834, 0
  store ptr %4835, ptr %5, align 8
  %4836 = extractvalue { ptr, i32 } %4834, 1
  store i32 %4836, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %290) #5
  br label %4837

4837:                                             ; preds = %4833, %4829
  call void @llvm.lifetime.end.p0(i64 24, ptr %290) #5
  br label %12015

4838:                                             ; preds = %4804
  %4839 = landingpad { ptr, i32 }
          cleanup
  %4840 = extractvalue { ptr, i32 } %4839, 0
  store ptr %4840, ptr %5, align 8
  %4841 = extractvalue { ptr, i32 } %4839, 1
  store i32 %4841, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %291) #5
  br label %12015

4842:                                             ; preds = %4807
  %4843 = landingpad { ptr, i32 }
          cleanup
  %4844 = extractvalue { ptr, i32 } %4843, 0
  store ptr %4844, ptr %5, align 8
  %4845 = extractvalue { ptr, i32 } %4843, 1
  store i32 %4845, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %292) #5
  br label %12015

4846:                                             ; preds = %4818
  %4847 = landingpad { ptr, i32 }
          cleanup
  %4848 = extractvalue { ptr, i32 } %4847, 0
  store ptr %4848, ptr %5, align 8
  %4849 = extractvalue { ptr, i32 } %4847, 1
  store i32 %4849, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %293) #5
  br label %12015

4850:                                             ; preds = %4824
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4851 unwind label %1026

4851:                                             ; preds = %4850
  br label %4812, !llvm.loop !68

4852:                                             ; preds = %4828
  call void @llvm.lifetime.start.p0(i64 24, ptr %294) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %294, i32 noundef 11)
          to label %4853 unwind label %4865

4853:                                             ; preds = %4852
  %4854 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %294)
          to label %4855 unwind label %4869

4855:                                             ; preds = %4853
  %4856 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %4854)
          to label %4857 unwind label %4869

4857:                                             ; preds = %4855
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %294) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %294) #5
  %4858 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 1)
          to label %4859 unwind label %1026

4859:                                             ; preds = %4857
  %4860 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %4858)
          to label %4861 unwind label %1026

4861:                                             ; preds = %4859
  br i1 %4860, label %4862, label %4874

4862:                                             ; preds = %4861
  %4863 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 0)
          to label %4864 unwind label %1026

4864:                                             ; preds = %4862
  br label %4877

4865:                                             ; preds = %4852
  %4866 = landingpad { ptr, i32 }
          cleanup
  %4867 = extractvalue { ptr, i32 } %4866, 0
  store ptr %4867, ptr %5, align 8
  %4868 = extractvalue { ptr, i32 } %4866, 1
  store i32 %4868, ptr %6, align 4
  br label %4873

4869:                                             ; preds = %4855, %4853
  %4870 = landingpad { ptr, i32 }
          cleanup
  %4871 = extractvalue { ptr, i32 } %4870, 0
  store ptr %4871, ptr %5, align 8
  %4872 = extractvalue { ptr, i32 } %4870, 1
  store i32 %4872, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %294) #5
  br label %4873

4873:                                             ; preds = %4869, %4865
  call void @llvm.lifetime.end.p0(i64 24, ptr %294) #5
  br label %12015

4874:                                             ; preds = %4861
  %4875 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 1)
          to label %4876 unwind label %1026

4876:                                             ; preds = %4874
  br label %4877

4877:                                             ; preds = %4876, %4864
  %4878 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %4879 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4878, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4880 unwind label %1026

4880:                                             ; preds = %4877
  %4881 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %4882 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4881, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %4883 unwind label %1026

4883:                                             ; preds = %4880
  call void @llvm.lifetime.start.p0(i64 1, ptr %295) #5
  store i8 0, ptr %295, align 1, !tbaa !9
  %4884 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %4885 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4884, ptr noundef nonnull align 1 dereferenceable(1) %295)
          to label %4886 unwind label %4903

4886:                                             ; preds = %4883
  call void @llvm.lifetime.end.p0(i64 1, ptr %295) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %296) #5
  store i8 1, ptr %296, align 1, !tbaa !9
  %4887 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4888 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4887, ptr noundef nonnull align 1 dereferenceable(1) %296)
          to label %4889 unwind label %4907

4889:                                             ; preds = %4886
  call void @llvm.lifetime.end.p0(i64 1, ptr %296) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4890 unwind label %1026

4890:                                             ; preds = %4889
  br label %4891

4891:                                             ; preds = %4916, %4890
  br label %4892

4892:                                             ; preds = %4891
  call void @llvm.lifetime.start.p0(i64 1, ptr %297) #5
  store i8 0, ptr %297, align 1, !tbaa !9
  %4893 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4894 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4893, ptr noundef nonnull align 1 dereferenceable(1) %297)
          to label %4895 unwind label %4911

4895:                                             ; preds = %4892
  call void @llvm.lifetime.end.p0(i64 1, ptr %297) #5
  %4896 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %4897 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4896)
          to label %4898 unwind label %1026

4898:                                             ; preds = %4895
  %4899 = load i8, ptr %4897, align 1, !tbaa !9, !range !11, !noundef !12
  %4900 = trunc i8 %4899 to i1
  br i1 %4900, label %4901, label %4915

4901:                                             ; preds = %4898
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4902 unwind label %1026

4902:                                             ; preds = %4901
  br label %4917

4903:                                             ; preds = %4883
  %4904 = landingpad { ptr, i32 }
          cleanup
  %4905 = extractvalue { ptr, i32 } %4904, 0
  store ptr %4905, ptr %5, align 8
  %4906 = extractvalue { ptr, i32 } %4904, 1
  store i32 %4906, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %295) #5
  br label %12015

4907:                                             ; preds = %4886
  %4908 = landingpad { ptr, i32 }
          cleanup
  %4909 = extractvalue { ptr, i32 } %4908, 0
  store ptr %4909, ptr %5, align 8
  %4910 = extractvalue { ptr, i32 } %4908, 1
  store i32 %4910, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %296) #5
  br label %12015

4911:                                             ; preds = %4892
  %4912 = landingpad { ptr, i32 }
          cleanup
  %4913 = extractvalue { ptr, i32 } %4912, 0
  store ptr %4913, ptr %5, align 8
  %4914 = extractvalue { ptr, i32 } %4912, 1
  store i32 %4914, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %297) #5
  br label %12015

4915:                                             ; preds = %4898
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4916 unwind label %1026

4916:                                             ; preds = %4915
  br label %4891, !llvm.loop !69

4917:                                             ; preds = %4902
  %4918 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %4919 unwind label %1026

4919:                                             ; preds = %4917
  %4920 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %4921 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4920, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4922 unwind label %1026

4922:                                             ; preds = %4919
  %4923 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %4924 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4923, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %4925 unwind label %1026

4925:                                             ; preds = %4922
  call void @llvm.lifetime.start.p0(i64 1, ptr %298) #5
  store i8 1, ptr %298, align 1, !tbaa !9
  %4926 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %4927 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4926, ptr noundef nonnull align 1 dereferenceable(1) %298)
          to label %4928 unwind label %4950

4928:                                             ; preds = %4925
  call void @llvm.lifetime.end.p0(i64 1, ptr %298) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %299) #5
  store i8 1, ptr %299, align 1, !tbaa !9
  %4929 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4930 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4929, ptr noundef nonnull align 1 dereferenceable(1) %299)
          to label %4931 unwind label %4954

4931:                                             ; preds = %4928
  call void @llvm.lifetime.end.p0(i64 1, ptr %299) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4932 unwind label %1026

4932:                                             ; preds = %4931
  br label %4933

4933:                                             ; preds = %4963, %4932
  br label %4934

4934:                                             ; preds = %4933
  %4935 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %4936 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %4935)
          to label %4937 unwind label %1026

4937:                                             ; preds = %4934
  %4938 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %4936)
          to label %4939 unwind label %1026

4939:                                             ; preds = %4937
  call void @llvm.lifetime.start.p0(i64 1, ptr %300) #5
  store i8 0, ptr %300, align 1, !tbaa !9
  %4940 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4941 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4940, ptr noundef nonnull align 1 dereferenceable(1) %300)
          to label %4942 unwind label %4958

4942:                                             ; preds = %4939
  call void @llvm.lifetime.end.p0(i64 1, ptr %300) #5
  %4943 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %4944 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4943)
          to label %4945 unwind label %1026

4945:                                             ; preds = %4942
  %4946 = load i8, ptr %4944, align 1, !tbaa !9, !range !11, !noundef !12
  %4947 = trunc i8 %4946 to i1
  br i1 %4947, label %4948, label %4962

4948:                                             ; preds = %4945
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4949 unwind label %1026

4949:                                             ; preds = %4948
  br label %4964

4950:                                             ; preds = %4925
  %4951 = landingpad { ptr, i32 }
          cleanup
  %4952 = extractvalue { ptr, i32 } %4951, 0
  store ptr %4952, ptr %5, align 8
  %4953 = extractvalue { ptr, i32 } %4951, 1
  store i32 %4953, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %298) #5
  br label %12015

4954:                                             ; preds = %4928
  %4955 = landingpad { ptr, i32 }
          cleanup
  %4956 = extractvalue { ptr, i32 } %4955, 0
  store ptr %4956, ptr %5, align 8
  %4957 = extractvalue { ptr, i32 } %4955, 1
  store i32 %4957, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %299) #5
  br label %12015

4958:                                             ; preds = %4939
  %4959 = landingpad { ptr, i32 }
          cleanup
  %4960 = extractvalue { ptr, i32 } %4959, 0
  store ptr %4960, ptr %5, align 8
  %4961 = extractvalue { ptr, i32 } %4959, 1
  store i32 %4961, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %300) #5
  br label %12015

4962:                                             ; preds = %4945
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4963 unwind label %1026

4963:                                             ; preds = %4962
  br label %4933, !llvm.loop !70

4964:                                             ; preds = %4949
  call void @llvm.lifetime.start.p0(i64 24, ptr %301) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %301, i32 noundef 12)
          to label %4965 unwind label %4997

4965:                                             ; preds = %4964
  %4966 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %301)
          to label %4967 unwind label %5001

4967:                                             ; preds = %4965
  %4968 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %4966)
          to label %4969 unwind label %5001

4969:                                             ; preds = %4967
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %301) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %301) #5
  %4970 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %4)
          to label %4971 unwind label %1026

4971:                                             ; preds = %4969
  %4972 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %4973 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4972, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4974 unwind label %1026

4974:                                             ; preds = %4971
  %4975 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %4976 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %4975, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %4977 unwind label %1026

4977:                                             ; preds = %4974
  call void @llvm.lifetime.start.p0(i64 1, ptr %302) #5
  store i8 0, ptr %302, align 1, !tbaa !9
  %4978 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %4979 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4978, ptr noundef nonnull align 1 dereferenceable(1) %302)
          to label %4980 unwind label %5006

4980:                                             ; preds = %4977
  call void @llvm.lifetime.end.p0(i64 1, ptr %302) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %303) #5
  store i8 1, ptr %303, align 1, !tbaa !9
  %4981 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4982 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4981, ptr noundef nonnull align 1 dereferenceable(1) %303)
          to label %4983 unwind label %5010

4983:                                             ; preds = %4980
  call void @llvm.lifetime.end.p0(i64 1, ptr %303) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4984 unwind label %1026

4984:                                             ; preds = %4983
  br label %4985

4985:                                             ; preds = %5019, %4984
  br label %4986

4986:                                             ; preds = %4985
  call void @llvm.lifetime.start.p0(i64 1, ptr %304) #5
  store i8 0, ptr %304, align 1, !tbaa !9
  %4987 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %4988 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %4987, ptr noundef nonnull align 1 dereferenceable(1) %304)
          to label %4989 unwind label %5014

4989:                                             ; preds = %4986
  call void @llvm.lifetime.end.p0(i64 1, ptr %304) #5
  %4990 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %4991 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %4990)
          to label %4992 unwind label %1026

4992:                                             ; preds = %4989
  %4993 = load i8, ptr %4991, align 1, !tbaa !9, !range !11, !noundef !12
  %4994 = trunc i8 %4993 to i1
  br i1 %4994, label %4995, label %5018

4995:                                             ; preds = %4992
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %4996 unwind label %1026

4996:                                             ; preds = %4995
  br label %5020

4997:                                             ; preds = %4964
  %4998 = landingpad { ptr, i32 }
          cleanup
  %4999 = extractvalue { ptr, i32 } %4998, 0
  store ptr %4999, ptr %5, align 8
  %5000 = extractvalue { ptr, i32 } %4998, 1
  store i32 %5000, ptr %6, align 4
  br label %5005

5001:                                             ; preds = %4967, %4965
  %5002 = landingpad { ptr, i32 }
          cleanup
  %5003 = extractvalue { ptr, i32 } %5002, 0
  store ptr %5003, ptr %5, align 8
  %5004 = extractvalue { ptr, i32 } %5002, 1
  store i32 %5004, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %301) #5
  br label %5005

5005:                                             ; preds = %5001, %4997
  call void @llvm.lifetime.end.p0(i64 24, ptr %301) #5
  br label %12015

5006:                                             ; preds = %4977
  %5007 = landingpad { ptr, i32 }
          cleanup
  %5008 = extractvalue { ptr, i32 } %5007, 0
  store ptr %5008, ptr %5, align 8
  %5009 = extractvalue { ptr, i32 } %5007, 1
  store i32 %5009, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %302) #5
  br label %12015

5010:                                             ; preds = %4980
  %5011 = landingpad { ptr, i32 }
          cleanup
  %5012 = extractvalue { ptr, i32 } %5011, 0
  store ptr %5012, ptr %5, align 8
  %5013 = extractvalue { ptr, i32 } %5011, 1
  store i32 %5013, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %303) #5
  br label %12015

5014:                                             ; preds = %4986
  %5015 = landingpad { ptr, i32 }
          cleanup
  %5016 = extractvalue { ptr, i32 } %5015, 0
  store ptr %5016, ptr %5, align 8
  %5017 = extractvalue { ptr, i32 } %5015, 1
  store i32 %5017, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %304) #5
  br label %12015

5018:                                             ; preds = %4992
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5019 unwind label %1026

5019:                                             ; preds = %5018
  br label %4985, !llvm.loop !71

5020:                                             ; preds = %4996
  %5021 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %5022 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5021, ptr noundef nonnull align 8 dereferenceable(24) %11)
          to label %5023 unwind label %1026

5023:                                             ; preds = %5020
  call void @llvm.lifetime.start.p0(i64 24, ptr %305) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %306) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %306, i32 noundef 0)
          to label %5024 unwind label %5051

5024:                                             ; preds = %5023
  %5025 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %306)
          to label %5026 unwind label %5055

5026:                                             ; preds = %5024
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %305, ptr noundef nonnull align 1 dereferenceable(1) %5025)
          to label %5027 unwind label %5055

5027:                                             ; preds = %5026
  %5028 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %5029 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5028, ptr noundef nonnull align 8 dereferenceable(24) %305)
          to label %5030 unwind label %5059

5030:                                             ; preds = %5027
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %305) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %306) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %306) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %305) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %307) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %307, i32 noundef 1)
          to label %5031 unwind label %5065

5031:                                             ; preds = %5030
  %5032 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %5033 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5032, ptr noundef nonnull align 8 dereferenceable(24) %307)
          to label %5034 unwind label %5069

5034:                                             ; preds = %5031
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %307) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %307) #5
  %5035 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %5036 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5035, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %5037 unwind label %1026

5037:                                             ; preds = %5034
  call void @llvm.lifetime.start.p0(i64 1, ptr %308) #5
  store i8 1, ptr %308, align 1, !tbaa !9
  %5038 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %5039 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5038, ptr noundef nonnull align 1 dereferenceable(1) %308)
          to label %5040 unwind label %5074

5040:                                             ; preds = %5037
  call void @llvm.lifetime.end.p0(i64 1, ptr %308) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5041 unwind label %1026

5041:                                             ; preds = %5040
  br label %5042

5042:                                             ; preds = %5050, %5041
  %5043 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %5044 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %5043)
          to label %5045 unwind label %1026

5045:                                             ; preds = %5042
  %5046 = load i8, ptr %5044, align 1, !tbaa !9, !range !11, !noundef !12
  %5047 = trunc i8 %5046 to i1
  %5048 = xor i1 %5047, true
  br i1 %5048, label %5049, label %5078

5049:                                             ; preds = %5045
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5050 unwind label %1026

5050:                                             ; preds = %5049
  br label %5042, !llvm.loop !72

5051:                                             ; preds = %5023
  %5052 = landingpad { ptr, i32 }
          cleanup
  %5053 = extractvalue { ptr, i32 } %5052, 0
  store ptr %5053, ptr %5, align 8
  %5054 = extractvalue { ptr, i32 } %5052, 1
  store i32 %5054, ptr %6, align 4
  br label %5064

5055:                                             ; preds = %5026, %5024
  %5056 = landingpad { ptr, i32 }
          cleanup
  %5057 = extractvalue { ptr, i32 } %5056, 0
  store ptr %5057, ptr %5, align 8
  %5058 = extractvalue { ptr, i32 } %5056, 1
  store i32 %5058, ptr %6, align 4
  br label %5063

5059:                                             ; preds = %5027
  %5060 = landingpad { ptr, i32 }
          cleanup
  %5061 = extractvalue { ptr, i32 } %5060, 0
  store ptr %5061, ptr %5, align 8
  %5062 = extractvalue { ptr, i32 } %5060, 1
  store i32 %5062, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %305) #5
  br label %5063

5063:                                             ; preds = %5059, %5055
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %306) #5
  br label %5064

5064:                                             ; preds = %5063, %5051
  call void @llvm.lifetime.end.p0(i64 24, ptr %306) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %305) #5
  br label %12015

5065:                                             ; preds = %5030
  %5066 = landingpad { ptr, i32 }
          cleanup
  %5067 = extractvalue { ptr, i32 } %5066, 0
  store ptr %5067, ptr %5, align 8
  %5068 = extractvalue { ptr, i32 } %5066, 1
  store i32 %5068, ptr %6, align 4
  br label %5073

5069:                                             ; preds = %5031
  %5070 = landingpad { ptr, i32 }
          cleanup
  %5071 = extractvalue { ptr, i32 } %5070, 0
  store ptr %5071, ptr %5, align 8
  %5072 = extractvalue { ptr, i32 } %5070, 1
  store i32 %5072, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %307) #5
  br label %5073

5073:                                             ; preds = %5069, %5065
  call void @llvm.lifetime.end.p0(i64 24, ptr %307) #5
  br label %12015

5074:                                             ; preds = %5037
  %5075 = landingpad { ptr, i32 }
          cleanup
  %5076 = extractvalue { ptr, i32 } %5075, 0
  store ptr %5076, ptr %5, align 8
  %5077 = extractvalue { ptr, i32 } %5075, 1
  store i32 %5077, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %308) #5
  br label %12015

5078:                                             ; preds = %5045
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5079 unwind label %1026

5079:                                             ; preds = %5078
  call void @llvm.lifetime.start.p0(i64 1, ptr %309) #5
  store i8 0, ptr %309, align 1, !tbaa !9
  %5080 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %5081 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5080, ptr noundef nonnull align 1 dereferenceable(1) %309)
          to label %5082 unwind label %5084

5082:                                             ; preds = %5079
  call void @llvm.lifetime.end.p0(i64 1, ptr %309) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5083 unwind label %1026

5083:                                             ; preds = %5082
  br label %5092

5084:                                             ; preds = %5079
  %5085 = landingpad { ptr, i32 }
          cleanup
  %5086 = extractvalue { ptr, i32 } %5085, 0
  store ptr %5086, ptr %5, align 8
  %5087 = extractvalue { ptr, i32 } %5085, 1
  store i32 %5087, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %309) #5
  br label %12015

5088:                                             ; preds = %4191
  %5089 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef -4)
          to label %5090 unwind label %1026

5090:                                             ; preds = %5088
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5091 unwind label %1026

5091:                                             ; preds = %5090
  br label %5092

5092:                                             ; preds = %5091, %5083, %4506, %4402, %4297
  br label %5093

5093:                                             ; preds = %5092, %2780
  %5094 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
          to label %5095 unwind label %1026

5095:                                             ; preds = %5093
  %5096 = icmp ne i64 %5094, 3
  br i1 %5096, label %5101, label %5097

5097:                                             ; preds = %5095
  %5098 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %15)
          to label %5099 unwind label %1026

5099:                                             ; preds = %5097
  %5100 = icmp eq i64 %5098, 0
  br i1 %5100, label %5101, label %5105

5101:                                             ; preds = %5099, %5095
  %5102 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 1)
          to label %5103 unwind label %1026

5103:                                             ; preds = %5101
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5104 unwind label %1026

5104:                                             ; preds = %5103
  br label %5672

5105:                                             ; preds = %5099
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5106 unwind label %1026

5106:                                             ; preds = %5105
  %5107 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %33, ptr noundef nonnull align 8 dereferenceable(24) %33)
          to label %5108 unwind label %1026

5108:                                             ; preds = %5106
  %5109 = load i8, ptr %34, align 1, !tbaa !9, !range !11, !noundef !12
  %5110 = trunc i8 %5109 to i1
  %5111 = zext i1 %5110 to i8
  store i8 %5111, ptr %34, align 1, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %310) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %310, i32 noundef 24)
          to label %5112 unwind label %5147

5112:                                             ; preds = %5108
  %5113 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %310)
          to label %5114 unwind label %5151

5114:                                             ; preds = %5112
  %5115 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %5113)
          to label %5116 unwind label %5151

5116:                                             ; preds = %5114
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %310) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %310) #5
  %5117 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %5118 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5117, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %5119 unwind label %1026

5119:                                             ; preds = %5116
  %5120 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %5121 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5120, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %5122 unwind label %1026

5122:                                             ; preds = %5119
  call void @llvm.lifetime.start.p0(i64 1, ptr %311) #5
  store i8 1, ptr %311, align 1, !tbaa !9
  %5123 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %5124 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5123, ptr noundef nonnull align 1 dereferenceable(1) %311)
          to label %5125 unwind label %5156

5125:                                             ; preds = %5122
  call void @llvm.lifetime.end.p0(i64 1, ptr %311) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %312) #5
  store i8 1, ptr %312, align 1, !tbaa !9
  %5126 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %5127 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5126, ptr noundef nonnull align 1 dereferenceable(1) %312)
          to label %5128 unwind label %5160

5128:                                             ; preds = %5125
  call void @llvm.lifetime.end.p0(i64 1, ptr %312) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5129 unwind label %1026

5129:                                             ; preds = %5128
  br label %5130

5130:                                             ; preds = %5169, %5129
  br label %5131

5131:                                             ; preds = %5130
  %5132 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %5133 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %5132)
          to label %5134 unwind label %1026

5134:                                             ; preds = %5131
  %5135 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %5133)
          to label %5136 unwind label %1026

5136:                                             ; preds = %5134
  call void @llvm.lifetime.start.p0(i64 1, ptr %313) #5
  store i8 0, ptr %313, align 1, !tbaa !9
  %5137 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %5138 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5137, ptr noundef nonnull align 1 dereferenceable(1) %313)
          to label %5139 unwind label %5164

5139:                                             ; preds = %5136
  call void @llvm.lifetime.end.p0(i64 1, ptr %313) #5
  %5140 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %5141 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %5140)
          to label %5142 unwind label %1026

5142:                                             ; preds = %5139
  %5143 = load i8, ptr %5141, align 1, !tbaa !9, !range !11, !noundef !12
  %5144 = trunc i8 %5143 to i1
  br i1 %5144, label %5145, label %5168

5145:                                             ; preds = %5142
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5146 unwind label %1026

5146:                                             ; preds = %5145
  br label %5170

5147:                                             ; preds = %5108
  %5148 = landingpad { ptr, i32 }
          cleanup
  %5149 = extractvalue { ptr, i32 } %5148, 0
  store ptr %5149, ptr %5, align 8
  %5150 = extractvalue { ptr, i32 } %5148, 1
  store i32 %5150, ptr %6, align 4
  br label %5155

5151:                                             ; preds = %5114, %5112
  %5152 = landingpad { ptr, i32 }
          cleanup
  %5153 = extractvalue { ptr, i32 } %5152, 0
  store ptr %5153, ptr %5, align 8
  %5154 = extractvalue { ptr, i32 } %5152, 1
  store i32 %5154, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %310) #5
  br label %5155

5155:                                             ; preds = %5151, %5147
  call void @llvm.lifetime.end.p0(i64 24, ptr %310) #5
  br label %12015

5156:                                             ; preds = %5122
  %5157 = landingpad { ptr, i32 }
          cleanup
  %5158 = extractvalue { ptr, i32 } %5157, 0
  store ptr %5158, ptr %5, align 8
  %5159 = extractvalue { ptr, i32 } %5157, 1
  store i32 %5159, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %311) #5
  br label %12015

5160:                                             ; preds = %5125
  %5161 = landingpad { ptr, i32 }
          cleanup
  %5162 = extractvalue { ptr, i32 } %5161, 0
  store ptr %5162, ptr %5, align 8
  %5163 = extractvalue { ptr, i32 } %5161, 1
  store i32 %5163, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %312) #5
  br label %12015

5164:                                             ; preds = %5136
  %5165 = landingpad { ptr, i32 }
          cleanup
  %5166 = extractvalue { ptr, i32 } %5165, 0
  store ptr %5166, ptr %5, align 8
  %5167 = extractvalue { ptr, i32 } %5165, 1
  store i32 %5167, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %313) #5
  br label %12015

5168:                                             ; preds = %5142
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5169 unwind label %1026

5169:                                             ; preds = %5168
  br label %5130, !llvm.loop !73

5170:                                             ; preds = %5146
  %5171 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 13, i32 noundef 8)
          to label %5172 unwind label %1026

5172:                                             ; preds = %5170
  %5173 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %23, ptr noundef nonnull align 8 dereferenceable(28) %5171)
          to label %5174 unwind label %1026

5174:                                             ; preds = %5172
  %5175 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %23)
          to label %5176 unwind label %1026

5176:                                             ; preds = %5174
  %5177 = add nsw i64 %5175, 2
  %5178 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %17, i64 noundef %5177)
          to label %5179 unwind label %1026

5179:                                             ; preds = %5176
  call void @llvm.lifetime.start.p0(i64 24, ptr %314) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %314, i32 noundef 8)
          to label %5180 unwind label %5212

5180:                                             ; preds = %5179
  %5181 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %314)
          to label %5182 unwind label %5216

5182:                                             ; preds = %5180
  %5183 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %5181)
          to label %5184 unwind label %5216

5184:                                             ; preds = %5182
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %314) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %314) #5
  %5185 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %4)
          to label %5186 unwind label %1026

5186:                                             ; preds = %5184
  %5187 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %5188 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5187, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %5189 unwind label %1026

5189:                                             ; preds = %5186
  %5190 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %5191 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5190, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %5192 unwind label %1026

5192:                                             ; preds = %5189
  call void @llvm.lifetime.start.p0(i64 1, ptr %315) #5
  store i8 0, ptr %315, align 1, !tbaa !9
  %5193 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %5194 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5193, ptr noundef nonnull align 1 dereferenceable(1) %315)
          to label %5195 unwind label %5221

5195:                                             ; preds = %5192
  call void @llvm.lifetime.end.p0(i64 1, ptr %315) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %316) #5
  store i8 1, ptr %316, align 1, !tbaa !9
  %5196 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %5197 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5196, ptr noundef nonnull align 1 dereferenceable(1) %316)
          to label %5198 unwind label %5225

5198:                                             ; preds = %5195
  call void @llvm.lifetime.end.p0(i64 1, ptr %316) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5199 unwind label %1026

5199:                                             ; preds = %5198
  br label %5200

5200:                                             ; preds = %5234, %5199
  br label %5201

5201:                                             ; preds = %5200
  call void @llvm.lifetime.start.p0(i64 1, ptr %317) #5
  store i8 0, ptr %317, align 1, !tbaa !9
  %5202 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %5203 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5202, ptr noundef nonnull align 1 dereferenceable(1) %317)
          to label %5204 unwind label %5229

5204:                                             ; preds = %5201
  call void @llvm.lifetime.end.p0(i64 1, ptr %317) #5
  %5205 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %5206 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %5205)
          to label %5207 unwind label %1026

5207:                                             ; preds = %5204
  %5208 = load i8, ptr %5206, align 1, !tbaa !9, !range !11, !noundef !12
  %5209 = trunc i8 %5208 to i1
  br i1 %5209, label %5210, label %5233

5210:                                             ; preds = %5207
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5211 unwind label %1026

5211:                                             ; preds = %5210
  br label %5235

5212:                                             ; preds = %5179
  %5213 = landingpad { ptr, i32 }
          cleanup
  %5214 = extractvalue { ptr, i32 } %5213, 0
  store ptr %5214, ptr %5, align 8
  %5215 = extractvalue { ptr, i32 } %5213, 1
  store i32 %5215, ptr %6, align 4
  br label %5220

5216:                                             ; preds = %5182, %5180
  %5217 = landingpad { ptr, i32 }
          cleanup
  %5218 = extractvalue { ptr, i32 } %5217, 0
  store ptr %5218, ptr %5, align 8
  %5219 = extractvalue { ptr, i32 } %5217, 1
  store i32 %5219, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %314) #5
  br label %5220

5220:                                             ; preds = %5216, %5212
  call void @llvm.lifetime.end.p0(i64 24, ptr %314) #5
  br label %12015

5221:                                             ; preds = %5192
  %5222 = landingpad { ptr, i32 }
          cleanup
  %5223 = extractvalue { ptr, i32 } %5222, 0
  store ptr %5223, ptr %5, align 8
  %5224 = extractvalue { ptr, i32 } %5222, 1
  store i32 %5224, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %315) #5
  br label %12015

5225:                                             ; preds = %5195
  %5226 = landingpad { ptr, i32 }
          cleanup
  %5227 = extractvalue { ptr, i32 } %5226, 0
  store ptr %5227, ptr %5, align 8
  %5228 = extractvalue { ptr, i32 } %5226, 1
  store i32 %5228, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %316) #5
  br label %12015

5229:                                             ; preds = %5201
  %5230 = landingpad { ptr, i32 }
          cleanup
  %5231 = extractvalue { ptr, i32 } %5230, 0
  store ptr %5231, ptr %5, align 8
  %5232 = extractvalue { ptr, i32 } %5230, 1
  store i32 %5232, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %317) #5
  br label %12015

5233:                                             ; preds = %5207
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5234 unwind label %1026

5234:                                             ; preds = %5233
  br label %5200, !llvm.loop !74

5235:                                             ; preds = %5211
  call void @llvm.lifetime.start.p0(i64 24, ptr %318) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %318, i32 noundef 25)
          to label %5236 unwind label %5271

5236:                                             ; preds = %5235
  %5237 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %318)
          to label %5238 unwind label %5275

5238:                                             ; preds = %5236
  %5239 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %5237)
          to label %5240 unwind label %5275

5240:                                             ; preds = %5238
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %318) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %318) #5
  %5241 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %5242 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5241, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %5243 unwind label %1026

5243:                                             ; preds = %5240
  %5244 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %5245 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5244, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %5246 unwind label %1026

5246:                                             ; preds = %5243
  call void @llvm.lifetime.start.p0(i64 1, ptr %319) #5
  store i8 1, ptr %319, align 1, !tbaa !9
  %5247 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %5248 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5247, ptr noundef nonnull align 1 dereferenceable(1) %319)
          to label %5249 unwind label %5280

5249:                                             ; preds = %5246
  call void @llvm.lifetime.end.p0(i64 1, ptr %319) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %320) #5
  store i8 1, ptr %320, align 1, !tbaa !9
  %5250 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %5251 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5250, ptr noundef nonnull align 1 dereferenceable(1) %320)
          to label %5252 unwind label %5284

5252:                                             ; preds = %5249
  call void @llvm.lifetime.end.p0(i64 1, ptr %320) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5253 unwind label %1026

5253:                                             ; preds = %5252
  br label %5254

5254:                                             ; preds = %5293, %5253
  br label %5255

5255:                                             ; preds = %5254
  %5256 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %5257 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %5256)
          to label %5258 unwind label %1026

5258:                                             ; preds = %5255
  %5259 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %5257)
          to label %5260 unwind label %1026

5260:                                             ; preds = %5258
  call void @llvm.lifetime.start.p0(i64 1, ptr %321) #5
  store i8 0, ptr %321, align 1, !tbaa !9
  %5261 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %5262 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5261, ptr noundef nonnull align 1 dereferenceable(1) %321)
          to label %5263 unwind label %5288

5263:                                             ; preds = %5260
  call void @llvm.lifetime.end.p0(i64 1, ptr %321) #5
  %5264 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %5265 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %5264)
          to label %5266 unwind label %1026

5266:                                             ; preds = %5263
  %5267 = load i8, ptr %5265, align 1, !tbaa !9, !range !11, !noundef !12
  %5268 = trunc i8 %5267 to i1
  br i1 %5268, label %5269, label %5292

5269:                                             ; preds = %5266
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5270 unwind label %1026

5270:                                             ; preds = %5269
  br label %5294

5271:                                             ; preds = %5235
  %5272 = landingpad { ptr, i32 }
          cleanup
  %5273 = extractvalue { ptr, i32 } %5272, 0
  store ptr %5273, ptr %5, align 8
  %5274 = extractvalue { ptr, i32 } %5272, 1
  store i32 %5274, ptr %6, align 4
  br label %5279

5275:                                             ; preds = %5238, %5236
  %5276 = landingpad { ptr, i32 }
          cleanup
  %5277 = extractvalue { ptr, i32 } %5276, 0
  store ptr %5277, ptr %5, align 8
  %5278 = extractvalue { ptr, i32 } %5276, 1
  store i32 %5278, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %318) #5
  br label %5279

5279:                                             ; preds = %5275, %5271
  call void @llvm.lifetime.end.p0(i64 24, ptr %318) #5
  br label %12015

5280:                                             ; preds = %5246
  %5281 = landingpad { ptr, i32 }
          cleanup
  %5282 = extractvalue { ptr, i32 } %5281, 0
  store ptr %5282, ptr %5, align 8
  %5283 = extractvalue { ptr, i32 } %5281, 1
  store i32 %5283, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %319) #5
  br label %12015

5284:                                             ; preds = %5249
  %5285 = landingpad { ptr, i32 }
          cleanup
  %5286 = extractvalue { ptr, i32 } %5285, 0
  store ptr %5286, ptr %5, align 8
  %5287 = extractvalue { ptr, i32 } %5285, 1
  store i32 %5287, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %320) #5
  br label %12015

5288:                                             ; preds = %5260
  %5289 = landingpad { ptr, i32 }
          cleanup
  %5290 = extractvalue { ptr, i32 } %5289, 0
  store ptr %5290, ptr %5, align 8
  %5291 = extractvalue { ptr, i32 } %5289, 1
  store i32 %5291, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %321) #5
  br label %12015

5292:                                             ; preds = %5266
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5293 unwind label %1026

5293:                                             ; preds = %5292
  br label %5254, !llvm.loop !75

5294:                                             ; preds = %5270
  %5295 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 11, i32 noundef 0)
          to label %5296 unwind label %1026

5296:                                             ; preds = %5294
  %5297 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %18, ptr noundef nonnull align 8 dereferenceable(28) %5295)
          to label %5298 unwind label %1026

5298:                                             ; preds = %5296
  call void @llvm.lifetime.start.p0(i64 24, ptr %322) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %322, i32 noundef 9)
          to label %5299 unwind label %5331

5299:                                             ; preds = %5298
  %5300 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %322)
          to label %5301 unwind label %5335

5301:                                             ; preds = %5299
  %5302 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %5300)
          to label %5303 unwind label %5335

5303:                                             ; preds = %5301
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %322) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %322) #5
  %5304 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %4)
          to label %5305 unwind label %1026

5305:                                             ; preds = %5303
  %5306 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %5307 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5306, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %5308 unwind label %1026

5308:                                             ; preds = %5305
  %5309 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %5310 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5309, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %5311 unwind label %1026

5311:                                             ; preds = %5308
  call void @llvm.lifetime.start.p0(i64 1, ptr %323) #5
  store i8 0, ptr %323, align 1, !tbaa !9
  %5312 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %5313 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5312, ptr noundef nonnull align 1 dereferenceable(1) %323)
          to label %5314 unwind label %5340

5314:                                             ; preds = %5311
  call void @llvm.lifetime.end.p0(i64 1, ptr %323) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %324) #5
  store i8 1, ptr %324, align 1, !tbaa !9
  %5315 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %5316 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5315, ptr noundef nonnull align 1 dereferenceable(1) %324)
          to label %5317 unwind label %5344

5317:                                             ; preds = %5314
  call void @llvm.lifetime.end.p0(i64 1, ptr %324) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5318 unwind label %1026

5318:                                             ; preds = %5317
  br label %5319

5319:                                             ; preds = %5353, %5318
  br label %5320

5320:                                             ; preds = %5319
  call void @llvm.lifetime.start.p0(i64 1, ptr %325) #5
  store i8 0, ptr %325, align 1, !tbaa !9
  %5321 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %5322 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5321, ptr noundef nonnull align 1 dereferenceable(1) %325)
          to label %5323 unwind label %5348

5323:                                             ; preds = %5320
  call void @llvm.lifetime.end.p0(i64 1, ptr %325) #5
  %5324 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %5325 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %5324)
          to label %5326 unwind label %1026

5326:                                             ; preds = %5323
  %5327 = load i8, ptr %5325, align 1, !tbaa !9, !range !11, !noundef !12
  %5328 = trunc i8 %5327 to i1
  br i1 %5328, label %5329, label %5352

5329:                                             ; preds = %5326
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5330 unwind label %1026

5330:                                             ; preds = %5329
  br label %5354

5331:                                             ; preds = %5298
  %5332 = landingpad { ptr, i32 }
          cleanup
  %5333 = extractvalue { ptr, i32 } %5332, 0
  store ptr %5333, ptr %5, align 8
  %5334 = extractvalue { ptr, i32 } %5332, 1
  store i32 %5334, ptr %6, align 4
  br label %5339

5335:                                             ; preds = %5301, %5299
  %5336 = landingpad { ptr, i32 }
          cleanup
  %5337 = extractvalue { ptr, i32 } %5336, 0
  store ptr %5337, ptr %5, align 8
  %5338 = extractvalue { ptr, i32 } %5336, 1
  store i32 %5338, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %322) #5
  br label %5339

5339:                                             ; preds = %5335, %5331
  call void @llvm.lifetime.end.p0(i64 24, ptr %322) #5
  br label %12015

5340:                                             ; preds = %5311
  %5341 = landingpad { ptr, i32 }
          cleanup
  %5342 = extractvalue { ptr, i32 } %5341, 0
  store ptr %5342, ptr %5, align 8
  %5343 = extractvalue { ptr, i32 } %5341, 1
  store i32 %5343, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %323) #5
  br label %12015

5344:                                             ; preds = %5314
  %5345 = landingpad { ptr, i32 }
          cleanup
  %5346 = extractvalue { ptr, i32 } %5345, 0
  store ptr %5346, ptr %5, align 8
  %5347 = extractvalue { ptr, i32 } %5345, 1
  store i32 %5347, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %324) #5
  br label %12015

5348:                                             ; preds = %5320
  %5349 = landingpad { ptr, i32 }
          cleanup
  %5350 = extractvalue { ptr, i32 } %5349, 0
  store ptr %5350, ptr %5, align 8
  %5351 = extractvalue { ptr, i32 } %5349, 1
  store i32 %5351, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %325) #5
  br label %12015

5352:                                             ; preds = %5326
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5353 unwind label %1026

5353:                                             ; preds = %5352
  br label %5319, !llvm.loop !76

5354:                                             ; preds = %5330
  %5355 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %17)
          to label %5356 unwind label %1026

5356:                                             ; preds = %5354
  %5357 = shl i64 %5355, 1
  %5358 = add nsw i64 32, %5357
  %5359 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %17, i64 noundef %5358)
          to label %5360 unwind label %1026

5360:                                             ; preds = %5356
  %5361 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %16, i32 noundef 6)
          to label %5362 unwind label %1026

5362:                                             ; preds = %5360
  %5363 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 0)
          to label %5364 unwind label %1026

5364:                                             ; preds = %5362
  %5365 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %5363)
          to label %5366 unwind label %1026

5366:                                             ; preds = %5364
  %5367 = icmp ne i64 %5365, 0
  br i1 %5367, label %5368, label %5373

5368:                                             ; preds = %5366
  %5369 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 10)
          to label %5370 unwind label %1026

5370:                                             ; preds = %5368
  %5371 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 272)
          to label %5372 unwind label %1026

5372:                                             ; preds = %5370
  br label %5378

5373:                                             ; preds = %5366
  %5374 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 11)
          to label %5375 unwind label %1026

5375:                                             ; preds = %5373
  %5376 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 288)
          to label %5377 unwind label %1026

5377:                                             ; preds = %5375
  br label %5378

5378:                                             ; preds = %5377, %5372
  call void @llvm.lifetime.start.p0(i64 24, ptr %326) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %326, i32 noundef 0)
          to label %5379 unwind label %5415

5379:                                             ; preds = %5378
  %5380 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %326)
          to label %5381 unwind label %5419

5381:                                             ; preds = %5379
  %5382 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %5380)
          to label %5383 unwind label %5419

5383:                                             ; preds = %5381
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %326) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %326) #5
  %5384 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %17, ptr noundef nonnull align 8 dereferenceable(8) %16)
          to label %5385 unwind label %1026

5385:                                             ; preds = %5383
  %5386 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %5384, ptr noundef nonnull align 8 dereferenceable(8) %15)
          to label %5387 unwind label %1026

5387:                                             ; preds = %5385
  %5388 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 1 dereferenceable(1) %5386)
          to label %5389 unwind label %1026

5389:                                             ; preds = %5387
  %5390 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %5391 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5390, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %5392 unwind label %1026

5392:                                             ; preds = %5389
  %5393 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %5394 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5393, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %5395 unwind label %1026

5395:                                             ; preds = %5392
  call void @llvm.lifetime.start.p0(i64 1, ptr %327) #5
  store i8 0, ptr %327, align 1, !tbaa !9
  %5396 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %5397 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5396, ptr noundef nonnull align 1 dereferenceable(1) %327)
          to label %5398 unwind label %5424

5398:                                             ; preds = %5395
  call void @llvm.lifetime.end.p0(i64 1, ptr %327) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %328) #5
  store i8 1, ptr %328, align 1, !tbaa !9
  %5399 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %5400 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5399, ptr noundef nonnull align 1 dereferenceable(1) %328)
          to label %5401 unwind label %5428

5401:                                             ; preds = %5398
  call void @llvm.lifetime.end.p0(i64 1, ptr %328) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5402 unwind label %1026

5402:                                             ; preds = %5401
  br label %5403

5403:                                             ; preds = %5437, %5402
  br label %5404

5404:                                             ; preds = %5403
  call void @llvm.lifetime.start.p0(i64 1, ptr %329) #5
  store i8 0, ptr %329, align 1, !tbaa !9
  %5405 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %5406 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5405, ptr noundef nonnull align 1 dereferenceable(1) %329)
          to label %5407 unwind label %5432

5407:                                             ; preds = %5404
  call void @llvm.lifetime.end.p0(i64 1, ptr %329) #5
  %5408 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %5409 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %5408)
          to label %5410 unwind label %1026

5410:                                             ; preds = %5407
  %5411 = load i8, ptr %5409, align 1, !tbaa !9, !range !11, !noundef !12
  %5412 = trunc i8 %5411 to i1
  br i1 %5412, label %5413, label %5436

5413:                                             ; preds = %5410
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5414 unwind label %1026

5414:                                             ; preds = %5413
  br label %5438

5415:                                             ; preds = %5378
  %5416 = landingpad { ptr, i32 }
          cleanup
  %5417 = extractvalue { ptr, i32 } %5416, 0
  store ptr %5417, ptr %5, align 8
  %5418 = extractvalue { ptr, i32 } %5416, 1
  store i32 %5418, ptr %6, align 4
  br label %5423

5419:                                             ; preds = %5381, %5379
  %5420 = landingpad { ptr, i32 }
          cleanup
  %5421 = extractvalue { ptr, i32 } %5420, 0
  store ptr %5421, ptr %5, align 8
  %5422 = extractvalue { ptr, i32 } %5420, 1
  store i32 %5422, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %326) #5
  br label %5423

5423:                                             ; preds = %5419, %5415
  call void @llvm.lifetime.end.p0(i64 24, ptr %326) #5
  br label %12015

5424:                                             ; preds = %5395
  %5425 = landingpad { ptr, i32 }
          cleanup
  %5426 = extractvalue { ptr, i32 } %5425, 0
  store ptr %5426, ptr %5, align 8
  %5427 = extractvalue { ptr, i32 } %5425, 1
  store i32 %5427, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %327) #5
  br label %12015

5428:                                             ; preds = %5398
  %5429 = landingpad { ptr, i32 }
          cleanup
  %5430 = extractvalue { ptr, i32 } %5429, 0
  store ptr %5430, ptr %5, align 8
  %5431 = extractvalue { ptr, i32 } %5429, 1
  store i32 %5431, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %328) #5
  br label %12015

5432:                                             ; preds = %5404
  %5433 = landingpad { ptr, i32 }
          cleanup
  %5434 = extractvalue { ptr, i32 } %5433, 0
  store ptr %5434, ptr %5, align 8
  %5435 = extractvalue { ptr, i32 } %5433, 1
  store i32 %5435, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %329) #5
  br label %12015

5436:                                             ; preds = %5410
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5437 unwind label %1026

5437:                                             ; preds = %5436
  br label %5403, !llvm.loop !77

5438:                                             ; preds = %5414
  call void @llvm.lifetime.start.p0(i64 24, ptr %330) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %330, i32 noundef 1)
          to label %5439 unwind label %5474

5439:                                             ; preds = %5438
  %5440 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %330)
          to label %5441 unwind label %5478

5441:                                             ; preds = %5439
  %5442 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %5440)
          to label %5443 unwind label %5478

5443:                                             ; preds = %5441
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %330) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %330) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %331) #5
  invoke void @_ZN5sc_dt6sc_intILi4EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %331, i32 noundef 0)
          to label %5444 unwind label %5483

5444:                                             ; preds = %5443
  %5445 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %331, ptr noundef nonnull align 8 dereferenceable(8) %18)
          to label %5446 unwind label %5487

5446:                                             ; preds = %5444
  %5447 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 1 dereferenceable(1) %5445)
          to label %5448 unwind label %5487

5448:                                             ; preds = %5446
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %331) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %331) #5
  %5449 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %5450 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5449, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %5451 unwind label %1026

5451:                                             ; preds = %5448
  %5452 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %5453 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5452, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %5454 unwind label %1026

5454:                                             ; preds = %5451
  call void @llvm.lifetime.start.p0(i64 1, ptr %332) #5
  store i8 0, ptr %332, align 1, !tbaa !9
  %5455 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %5456 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5455, ptr noundef nonnull align 1 dereferenceable(1) %332)
          to label %5457 unwind label %5492

5457:                                             ; preds = %5454
  call void @llvm.lifetime.end.p0(i64 1, ptr %332) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %333) #5
  store i8 1, ptr %333, align 1, !tbaa !9
  %5458 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %5459 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5458, ptr noundef nonnull align 1 dereferenceable(1) %333)
          to label %5460 unwind label %5496

5460:                                             ; preds = %5457
  call void @llvm.lifetime.end.p0(i64 1, ptr %333) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5461 unwind label %1026

5461:                                             ; preds = %5460
  br label %5462

5462:                                             ; preds = %5505, %5461
  br label %5463

5463:                                             ; preds = %5462
  call void @llvm.lifetime.start.p0(i64 1, ptr %334) #5
  store i8 0, ptr %334, align 1, !tbaa !9
  %5464 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %5465 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5464, ptr noundef nonnull align 1 dereferenceable(1) %334)
          to label %5466 unwind label %5500

5466:                                             ; preds = %5463
  call void @llvm.lifetime.end.p0(i64 1, ptr %334) #5
  %5467 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %5468 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %5467)
          to label %5469 unwind label %1026

5469:                                             ; preds = %5466
  %5470 = load i8, ptr %5468, align 1, !tbaa !9, !range !11, !noundef !12
  %5471 = trunc i8 %5470 to i1
  br i1 %5471, label %5472, label %5504

5472:                                             ; preds = %5469
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5473 unwind label %1026

5473:                                             ; preds = %5472
  br label %5506

5474:                                             ; preds = %5438
  %5475 = landingpad { ptr, i32 }
          cleanup
  %5476 = extractvalue { ptr, i32 } %5475, 0
  store ptr %5476, ptr %5, align 8
  %5477 = extractvalue { ptr, i32 } %5475, 1
  store i32 %5477, ptr %6, align 4
  br label %5482

5478:                                             ; preds = %5441, %5439
  %5479 = landingpad { ptr, i32 }
          cleanup
  %5480 = extractvalue { ptr, i32 } %5479, 0
  store ptr %5480, ptr %5, align 8
  %5481 = extractvalue { ptr, i32 } %5479, 1
  store i32 %5481, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %330) #5
  br label %5482

5482:                                             ; preds = %5478, %5474
  call void @llvm.lifetime.end.p0(i64 24, ptr %330) #5
  br label %12015

5483:                                             ; preds = %5443
  %5484 = landingpad { ptr, i32 }
          cleanup
  %5485 = extractvalue { ptr, i32 } %5484, 0
  store ptr %5485, ptr %5, align 8
  %5486 = extractvalue { ptr, i32 } %5484, 1
  store i32 %5486, ptr %6, align 4
  br label %5491

5487:                                             ; preds = %5446, %5444
  %5488 = landingpad { ptr, i32 }
          cleanup
  %5489 = extractvalue { ptr, i32 } %5488, 0
  store ptr %5489, ptr %5, align 8
  %5490 = extractvalue { ptr, i32 } %5488, 1
  store i32 %5490, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %331) #5
  br label %5491

5491:                                             ; preds = %5487, %5483
  call void @llvm.lifetime.end.p0(i64 24, ptr %331) #5
  br label %12015

5492:                                             ; preds = %5454
  %5493 = landingpad { ptr, i32 }
          cleanup
  %5494 = extractvalue { ptr, i32 } %5493, 0
  store ptr %5494, ptr %5, align 8
  %5495 = extractvalue { ptr, i32 } %5493, 1
  store i32 %5495, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %332) #5
  br label %12015

5496:                                             ; preds = %5457
  %5497 = landingpad { ptr, i32 }
          cleanup
  %5498 = extractvalue { ptr, i32 } %5497, 0
  store ptr %5498, ptr %5, align 8
  %5499 = extractvalue { ptr, i32 } %5497, 1
  store i32 %5499, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %333) #5
  br label %12015

5500:                                             ; preds = %5463
  %5501 = landingpad { ptr, i32 }
          cleanup
  %5502 = extractvalue { ptr, i32 } %5501, 0
  store ptr %5502, ptr %5, align 8
  %5503 = extractvalue { ptr, i32 } %5501, 1
  store i32 %5503, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %334) #5
  br label %12015

5504:                                             ; preds = %5469
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5505 unwind label %1026

5505:                                             ; preds = %5504
  br label %5462, !llvm.loop !78

5506:                                             ; preds = %5473
  call void @llvm.lifetime.start.p0(i64 24, ptr %335) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %336) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %336, i32 noundef 26)
          to label %5507 unwind label %5545

5507:                                             ; preds = %5506
  %5508 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %336)
          to label %5509 unwind label %5549

5509:                                             ; preds = %5507
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %335, ptr noundef nonnull align 1 dereferenceable(1) %5508)
          to label %5510 unwind label %5549

5510:                                             ; preds = %5509
  %5511 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %5512 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5511, ptr noundef nonnull align 8 dereferenceable(24) %335)
          to label %5513 unwind label %5553

5513:                                             ; preds = %5510
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %335) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %336) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %336) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %335) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %337) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %338) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %338, i32 noundef 10)
          to label %5514 unwind label %5559

5514:                                             ; preds = %5513
  %5515 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %338)
          to label %5516 unwind label %5563

5516:                                             ; preds = %5514
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %337, ptr noundef nonnull align 1 dereferenceable(1) %5515)
          to label %5517 unwind label %5563

5517:                                             ; preds = %5516
  %5518 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %5519 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5518, ptr noundef nonnull align 8 dereferenceable(24) %337)
          to label %5520 unwind label %5567

5520:                                             ; preds = %5517
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %337) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %338) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %338) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %337) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %339) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2ERKNS_11sc_int_baseE(ptr noundef nonnull align 8 dereferenceable(24) %339, ptr noundef nonnull align 8 dereferenceable(24) %23)
          to label %5521 unwind label %5573

5521:                                             ; preds = %5520
  %5522 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %5523 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5522, ptr noundef nonnull align 8 dereferenceable(24) %339)
          to label %5524 unwind label %5577

5524:                                             ; preds = %5521
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %339) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %339) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %340) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %340, i32 noundef 3)
          to label %5525 unwind label %5582

5525:                                             ; preds = %5524
  %5526 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %5527 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5526, ptr noundef nonnull align 8 dereferenceable(24) %340)
          to label %5528 unwind label %5586

5528:                                             ; preds = %5525
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %340) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %340) #5
  %5529 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %5530 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5529, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %5531 unwind label %1026

5531:                                             ; preds = %5528
  call void @llvm.lifetime.start.p0(i64 1, ptr %341) #5
  store i8 1, ptr %341, align 1, !tbaa !9
  %5532 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %5533 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5532, ptr noundef nonnull align 1 dereferenceable(1) %341)
          to label %5534 unwind label %5591

5534:                                             ; preds = %5531
  call void @llvm.lifetime.end.p0(i64 1, ptr %341) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5535 unwind label %1026

5535:                                             ; preds = %5534
  br label %5536

5536:                                             ; preds = %5544, %5535
  %5537 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %5538 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %5537)
          to label %5539 unwind label %1026

5539:                                             ; preds = %5536
  %5540 = load i8, ptr %5538, align 1, !tbaa !9, !range !11, !noundef !12
  %5541 = trunc i8 %5540 to i1
  %5542 = xor i1 %5541, true
  br i1 %5542, label %5543, label %5595

5543:                                             ; preds = %5539
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5544 unwind label %1026

5544:                                             ; preds = %5543
  br label %5536, !llvm.loop !79

5545:                                             ; preds = %5506
  %5546 = landingpad { ptr, i32 }
          cleanup
  %5547 = extractvalue { ptr, i32 } %5546, 0
  store ptr %5547, ptr %5, align 8
  %5548 = extractvalue { ptr, i32 } %5546, 1
  store i32 %5548, ptr %6, align 4
  br label %5558

5549:                                             ; preds = %5509, %5507
  %5550 = landingpad { ptr, i32 }
          cleanup
  %5551 = extractvalue { ptr, i32 } %5550, 0
  store ptr %5551, ptr %5, align 8
  %5552 = extractvalue { ptr, i32 } %5550, 1
  store i32 %5552, ptr %6, align 4
  br label %5557

5553:                                             ; preds = %5510
  %5554 = landingpad { ptr, i32 }
          cleanup
  %5555 = extractvalue { ptr, i32 } %5554, 0
  store ptr %5555, ptr %5, align 8
  %5556 = extractvalue { ptr, i32 } %5554, 1
  store i32 %5556, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %335) #5
  br label %5557

5557:                                             ; preds = %5553, %5549
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %336) #5
  br label %5558

5558:                                             ; preds = %5557, %5545
  call void @llvm.lifetime.end.p0(i64 24, ptr %336) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %335) #5
  br label %12015

5559:                                             ; preds = %5513
  %5560 = landingpad { ptr, i32 }
          cleanup
  %5561 = extractvalue { ptr, i32 } %5560, 0
  store ptr %5561, ptr %5, align 8
  %5562 = extractvalue { ptr, i32 } %5560, 1
  store i32 %5562, ptr %6, align 4
  br label %5572

5563:                                             ; preds = %5516, %5514
  %5564 = landingpad { ptr, i32 }
          cleanup
  %5565 = extractvalue { ptr, i32 } %5564, 0
  store ptr %5565, ptr %5, align 8
  %5566 = extractvalue { ptr, i32 } %5564, 1
  store i32 %5566, ptr %6, align 4
  br label %5571

5567:                                             ; preds = %5517
  %5568 = landingpad { ptr, i32 }
          cleanup
  %5569 = extractvalue { ptr, i32 } %5568, 0
  store ptr %5569, ptr %5, align 8
  %5570 = extractvalue { ptr, i32 } %5568, 1
  store i32 %5570, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %337) #5
  br label %5571

5571:                                             ; preds = %5567, %5563
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %338) #5
  br label %5572

5572:                                             ; preds = %5571, %5559
  call void @llvm.lifetime.end.p0(i64 24, ptr %338) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %337) #5
  br label %12015

5573:                                             ; preds = %5520
  %5574 = landingpad { ptr, i32 }
          cleanup
  %5575 = extractvalue { ptr, i32 } %5574, 0
  store ptr %5575, ptr %5, align 8
  %5576 = extractvalue { ptr, i32 } %5574, 1
  store i32 %5576, ptr %6, align 4
  br label %5581

5577:                                             ; preds = %5521
  %5578 = landingpad { ptr, i32 }
          cleanup
  %5579 = extractvalue { ptr, i32 } %5578, 0
  store ptr %5579, ptr %5, align 8
  %5580 = extractvalue { ptr, i32 } %5578, 1
  store i32 %5580, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %339) #5
  br label %5581

5581:                                             ; preds = %5577, %5573
  call void @llvm.lifetime.end.p0(i64 24, ptr %339) #5
  br label %12015

5582:                                             ; preds = %5524
  %5583 = landingpad { ptr, i32 }
          cleanup
  %5584 = extractvalue { ptr, i32 } %5583, 0
  store ptr %5584, ptr %5, align 8
  %5585 = extractvalue { ptr, i32 } %5583, 1
  store i32 %5585, ptr %6, align 4
  br label %5590

5586:                                             ; preds = %5525
  %5587 = landingpad { ptr, i32 }
          cleanup
  %5588 = extractvalue { ptr, i32 } %5587, 0
  store ptr %5588, ptr %5, align 8
  %5589 = extractvalue { ptr, i32 } %5587, 1
  store i32 %5589, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %340) #5
  br label %5590

5590:                                             ; preds = %5586, %5582
  call void @llvm.lifetime.end.p0(i64 24, ptr %340) #5
  br label %12015

5591:                                             ; preds = %5531
  %5592 = landingpad { ptr, i32 }
          cleanup
  %5593 = extractvalue { ptr, i32 } %5592, 0
  store ptr %5593, ptr %5, align 8
  %5594 = extractvalue { ptr, i32 } %5592, 1
  store i32 %5594, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %341) #5
  br label %12015

5595:                                             ; preds = %5539
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5596 unwind label %1026

5596:                                             ; preds = %5595
  call void @llvm.lifetime.start.p0(i64 1, ptr %342) #5
  store i8 0, ptr %342, align 1, !tbaa !9
  %5597 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %5598 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5597, ptr noundef nonnull align 1 dereferenceable(1) %342)
          to label %5599 unwind label %5631

5599:                                             ; preds = %5596
  call void @llvm.lifetime.end.p0(i64 1, ptr %342) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5600 unwind label %1026

5600:                                             ; preds = %5599
  %5601 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %5602 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5601, ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %5603 unwind label %1026

5603:                                             ; preds = %5600
  call void @llvm.lifetime.start.p0(i64 24, ptr %343) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %344) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %344, i32 noundef 0)
          to label %5604 unwind label %5635

5604:                                             ; preds = %5603
  %5605 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %344)
          to label %5606 unwind label %5639

5606:                                             ; preds = %5604
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %343, ptr noundef nonnull align 1 dereferenceable(1) %5605)
          to label %5607 unwind label %5639

5607:                                             ; preds = %5606
  %5608 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %5609 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5608, ptr noundef nonnull align 8 dereferenceable(24) %343)
          to label %5610 unwind label %5643

5610:                                             ; preds = %5607
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %343) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %344) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %344) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %343) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %345) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %345, i32 noundef 1)
          to label %5611 unwind label %5649

5611:                                             ; preds = %5610
  %5612 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %5613 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5612, ptr noundef nonnull align 8 dereferenceable(24) %345)
          to label %5614 unwind label %5653

5614:                                             ; preds = %5611
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %345) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %345) #5
  %5615 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %5616 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5615, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %5617 unwind label %1026

5617:                                             ; preds = %5614
  call void @llvm.lifetime.start.p0(i64 1, ptr %346) #5
  store i8 1, ptr %346, align 1, !tbaa !9
  %5618 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %5619 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5618, ptr noundef nonnull align 1 dereferenceable(1) %346)
          to label %5620 unwind label %5658

5620:                                             ; preds = %5617
  call void @llvm.lifetime.end.p0(i64 1, ptr %346) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5621 unwind label %1026

5621:                                             ; preds = %5620
  br label %5622

5622:                                             ; preds = %5630, %5621
  %5623 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %5624 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %5623)
          to label %5625 unwind label %1026

5625:                                             ; preds = %5622
  %5626 = load i8, ptr %5624, align 1, !tbaa !9, !range !11, !noundef !12
  %5627 = trunc i8 %5626 to i1
  %5628 = xor i1 %5627, true
  br i1 %5628, label %5629, label %5662

5629:                                             ; preds = %5625
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5630 unwind label %1026

5630:                                             ; preds = %5629
  br label %5622, !llvm.loop !80

5631:                                             ; preds = %5596
  %5632 = landingpad { ptr, i32 }
          cleanup
  %5633 = extractvalue { ptr, i32 } %5632, 0
  store ptr %5633, ptr %5, align 8
  %5634 = extractvalue { ptr, i32 } %5632, 1
  store i32 %5634, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %342) #5
  br label %12015

5635:                                             ; preds = %5603
  %5636 = landingpad { ptr, i32 }
          cleanup
  %5637 = extractvalue { ptr, i32 } %5636, 0
  store ptr %5637, ptr %5, align 8
  %5638 = extractvalue { ptr, i32 } %5636, 1
  store i32 %5638, ptr %6, align 4
  br label %5648

5639:                                             ; preds = %5606, %5604
  %5640 = landingpad { ptr, i32 }
          cleanup
  %5641 = extractvalue { ptr, i32 } %5640, 0
  store ptr %5641, ptr %5, align 8
  %5642 = extractvalue { ptr, i32 } %5640, 1
  store i32 %5642, ptr %6, align 4
  br label %5647

5643:                                             ; preds = %5607
  %5644 = landingpad { ptr, i32 }
          cleanup
  %5645 = extractvalue { ptr, i32 } %5644, 0
  store ptr %5645, ptr %5, align 8
  %5646 = extractvalue { ptr, i32 } %5644, 1
  store i32 %5646, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %343) #5
  br label %5647

5647:                                             ; preds = %5643, %5639
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %344) #5
  br label %5648

5648:                                             ; preds = %5647, %5635
  call void @llvm.lifetime.end.p0(i64 24, ptr %344) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %343) #5
  br label %12015

5649:                                             ; preds = %5610
  %5650 = landingpad { ptr, i32 }
          cleanup
  %5651 = extractvalue { ptr, i32 } %5650, 0
  store ptr %5651, ptr %5, align 8
  %5652 = extractvalue { ptr, i32 } %5650, 1
  store i32 %5652, ptr %6, align 4
  br label %5657

5653:                                             ; preds = %5611
  %5654 = landingpad { ptr, i32 }
          cleanup
  %5655 = extractvalue { ptr, i32 } %5654, 0
  store ptr %5655, ptr %5, align 8
  %5656 = extractvalue { ptr, i32 } %5654, 1
  store i32 %5656, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %345) #5
  br label %5657

5657:                                             ; preds = %5653, %5649
  call void @llvm.lifetime.end.p0(i64 24, ptr %345) #5
  br label %12015

5658:                                             ; preds = %5617
  %5659 = landingpad { ptr, i32 }
          cleanup
  %5660 = extractvalue { ptr, i32 } %5659, 0
  store ptr %5660, ptr %5, align 8
  %5661 = extractvalue { ptr, i32 } %5659, 1
  store i32 %5661, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %346) #5
  br label %12015

5662:                                             ; preds = %5625
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5663 unwind label %1026

5663:                                             ; preds = %5662
  call void @llvm.lifetime.start.p0(i64 1, ptr %347) #5
  store i8 0, ptr %347, align 1, !tbaa !9
  %5664 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %5665 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5664, ptr noundef nonnull align 1 dereferenceable(1) %347)
          to label %5666 unwind label %5668

5666:                                             ; preds = %5663
  call void @llvm.lifetime.end.p0(i64 1, ptr %347) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5667 unwind label %1026

5667:                                             ; preds = %5666
  br label %5672

5668:                                             ; preds = %5663
  %5669 = landingpad { ptr, i32 }
          cleanup
  %5670 = extractvalue { ptr, i32 } %5669, 0
  store ptr %5670, ptr %5, align 8
  %5671 = extractvalue { ptr, i32 } %5669, 1
  store i32 %5671, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %347) #5
  br label %12015

5672:                                             ; preds = %5667, %5104
  br label %11913

5673:                                             ; preds = %2780
  %5674 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
          to label %5675 unwind label %1026

5675:                                             ; preds = %5673
  %5676 = icmp ne i64 %5674, 3
  br i1 %5676, label %5681, label %5677

5677:                                             ; preds = %5675
  %5678 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %15)
          to label %5679 unwind label %1026

5679:                                             ; preds = %5677
  %5680 = icmp eq i64 %5678, 0
  br i1 %5680, label %5681, label %5685

5681:                                             ; preds = %5679, %5675
  %5682 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 1)
          to label %5683 unwind label %1026

5683:                                             ; preds = %5681
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5684 unwind label %1026

5684:                                             ; preds = %5683
  br label %7754

5685:                                             ; preds = %5679
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5686 unwind label %1026

5686:                                             ; preds = %5685
  %5687 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %33, ptr noundef nonnull align 8 dereferenceable(24) %33)
          to label %5688 unwind label %1026

5688:                                             ; preds = %5686
  %5689 = load i8, ptr %34, align 1, !tbaa !9, !range !11, !noundef !12
  %5690 = trunc i8 %5689 to i1
  %5691 = zext i1 %5690 to i8
  store i8 %5691, ptr %34, align 1, !tbaa !9
  %5692 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %17, i32 noundef -32)
          to label %5693 unwind label %1026

5693:                                             ; preds = %5688
  %5694 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %16, i32 noundef 5)
          to label %5695 unwind label %1026

5695:                                             ; preds = %5693
  %5696 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, i32 noundef 2)
          to label %5697 unwind label %1026

5697:                                             ; preds = %5695
  %5698 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %21, i32 noundef 0)
          to label %5699 unwind label %1026

5699:                                             ; preds = %5697
  %5700 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %23, i32 noundef 3)
          to label %5701 unwind label %1026

5701:                                             ; preds = %5699
  %5702 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %24, i32 noundef 9)
          to label %5703 unwind label %1026

5703:                                             ; preds = %5701
  %5704 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi4EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %22, i32 noundef 0)
          to label %5705 unwind label %1026

5705:                                             ; preds = %5703
  %5706 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %19, i32 noundef 0)
          to label %5707 unwind label %1026

5707:                                             ; preds = %5705
  store i8 0, ptr %14, align 1, !tbaa !9
  %5708 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 0)
          to label %5709 unwind label %1026

5709:                                             ; preds = %5707
  %5710 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %5708)
          to label %5711 unwind label %1026

5711:                                             ; preds = %5709
  %5712 = icmp ne i64 %5710, 0
  br i1 %5712, label %5713, label %5718

5713:                                             ; preds = %5711
  %5714 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 10)
          to label %5715 unwind label %1026

5715:                                             ; preds = %5713
  %5716 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 272)
          to label %5717 unwind label %1026

5717:                                             ; preds = %5715
  br label %5723

5718:                                             ; preds = %5711
  %5719 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 11)
          to label %5720 unwind label %1026

5720:                                             ; preds = %5718
  %5721 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 288)
          to label %5722 unwind label %1026

5722:                                             ; preds = %5720
  br label %5723

5723:                                             ; preds = %5722, %5717
  call void @llvm.lifetime.start.p0(i64 24, ptr %348) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %348, i32 noundef 10)
          to label %5724 unwind label %5759

5724:                                             ; preds = %5723
  %5725 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %348)
          to label %5726 unwind label %5763

5726:                                             ; preds = %5724
  %5727 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %5725)
          to label %5728 unwind label %5763

5728:                                             ; preds = %5726
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %348) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %348) #5
  %5729 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %5730 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5729, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %5731 unwind label %1026

5731:                                             ; preds = %5728
  %5732 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %5733 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5732, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %5734 unwind label %1026

5734:                                             ; preds = %5731
  call void @llvm.lifetime.start.p0(i64 1, ptr %349) #5
  store i8 1, ptr %349, align 1, !tbaa !9
  %5735 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %5736 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5735, ptr noundef nonnull align 1 dereferenceable(1) %349)
          to label %5737 unwind label %5768

5737:                                             ; preds = %5734
  call void @llvm.lifetime.end.p0(i64 1, ptr %349) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %350) #5
  store i8 1, ptr %350, align 1, !tbaa !9
  %5738 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %5739 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5738, ptr noundef nonnull align 1 dereferenceable(1) %350)
          to label %5740 unwind label %5772

5740:                                             ; preds = %5737
  call void @llvm.lifetime.end.p0(i64 1, ptr %350) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5741 unwind label %1026

5741:                                             ; preds = %5740
  br label %5742

5742:                                             ; preds = %5781, %5741
  br label %5743

5743:                                             ; preds = %5742
  %5744 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %5745 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %5744)
          to label %5746 unwind label %1026

5746:                                             ; preds = %5743
  %5747 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %5745)
          to label %5748 unwind label %1026

5748:                                             ; preds = %5746
  call void @llvm.lifetime.start.p0(i64 1, ptr %351) #5
  store i8 0, ptr %351, align 1, !tbaa !9
  %5749 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %5750 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5749, ptr noundef nonnull align 1 dereferenceable(1) %351)
          to label %5751 unwind label %5776

5751:                                             ; preds = %5748
  call void @llvm.lifetime.end.p0(i64 1, ptr %351) #5
  %5752 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %5753 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %5752)
          to label %5754 unwind label %1026

5754:                                             ; preds = %5751
  %5755 = load i8, ptr %5753, align 1, !tbaa !9, !range !11, !noundef !12
  %5756 = trunc i8 %5755 to i1
  br i1 %5756, label %5757, label %5780

5757:                                             ; preds = %5754
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5758 unwind label %1026

5758:                                             ; preds = %5757
  br label %5782

5759:                                             ; preds = %5723
  %5760 = landingpad { ptr, i32 }
          cleanup
  %5761 = extractvalue { ptr, i32 } %5760, 0
  store ptr %5761, ptr %5, align 8
  %5762 = extractvalue { ptr, i32 } %5760, 1
  store i32 %5762, ptr %6, align 4
  br label %5767

5763:                                             ; preds = %5726, %5724
  %5764 = landingpad { ptr, i32 }
          cleanup
  %5765 = extractvalue { ptr, i32 } %5764, 0
  store ptr %5765, ptr %5, align 8
  %5766 = extractvalue { ptr, i32 } %5764, 1
  store i32 %5766, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %348) #5
  br label %5767

5767:                                             ; preds = %5763, %5759
  call void @llvm.lifetime.end.p0(i64 24, ptr %348) #5
  br label %12015

5768:                                             ; preds = %5734
  %5769 = landingpad { ptr, i32 }
          cleanup
  %5770 = extractvalue { ptr, i32 } %5769, 0
  store ptr %5770, ptr %5, align 8
  %5771 = extractvalue { ptr, i32 } %5769, 1
  store i32 %5771, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %349) #5
  br label %12015

5772:                                             ; preds = %5737
  %5773 = landingpad { ptr, i32 }
          cleanup
  %5774 = extractvalue { ptr, i32 } %5773, 0
  store ptr %5774, ptr %5, align 8
  %5775 = extractvalue { ptr, i32 } %5773, 1
  store i32 %5775, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %350) #5
  br label %12015

5776:                                             ; preds = %5748
  %5777 = landingpad { ptr, i32 }
          cleanup
  %5778 = extractvalue { ptr, i32 } %5777, 0
  store ptr %5778, ptr %5, align 8
  %5779 = extractvalue { ptr, i32 } %5777, 1
  store i32 %5779, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %351) #5
  br label %12015

5780:                                             ; preds = %5754
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5781 unwind label %1026

5781:                                             ; preds = %5780
  br label %5742, !llvm.loop !81

5782:                                             ; preds = %5758
  %5783 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 11
  %5784 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %5783)
          to label %5785 unwind label %1026

5785:                                             ; preds = %5782
  %5786 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %5784, i32 noundef 3)
          to label %5787 unwind label %1026

5787:                                             ; preds = %5785
  %5788 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %5786)
          to label %5789 unwind label %1026

5789:                                             ; preds = %5787
  %5790 = icmp ne i64 %5788, 0
  br i1 %5790, label %5791, label %5794

5791:                                             ; preds = %5789
  %5792 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 4096)
          to label %5793 unwind label %1026

5793:                                             ; preds = %5791
  br label %5797

5794:                                             ; preds = %5789
  %5795 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %4)
          to label %5796 unwind label %1026

5796:                                             ; preds = %5794
  br label %5797

5797:                                             ; preds = %5796, %5793
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5798 unwind label %1026

5798:                                             ; preds = %5797
  %5799 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %37, ptr noundef nonnull align 8 dereferenceable(24) %4)
          to label %5800 unwind label %1026

5800:                                             ; preds = %5798
  %5801 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %37)
          to label %5802 unwind label %1026

5802:                                             ; preds = %5800
  %5803 = trunc i64 %5801 to i32
  switch i32 %5803, label %7487 [
    i32 0, label %5804
    i32 1, label %5867
    i32 2, label %5924
    i32 3, label %5981
    i32 4, label %6058
    i32 5, label %6171
    i32 6, label %6284
    i32 7, label %6397
    i32 8, label %6533
    i32 9, label %6646
    i32 10, label %6739
    i32 -1, label %6877
  ]

5804:                                             ; preds = %5802
  call void @llvm.lifetime.start.p0(i64 24, ptr %352) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %352, i32 noundef 24)
          to label %5805 unwind label %5843

5805:                                             ; preds = %5804
  %5806 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %352)
          to label %5807 unwind label %5847

5807:                                             ; preds = %5805
  %5808 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %5806)
          to label %5809 unwind label %5847

5809:                                             ; preds = %5807
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %352) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %352) #5
  %5810 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 7
  %5811 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %5810)
          to label %5812 unwind label %1026

5812:                                             ; preds = %5809
  %5813 = load i8, ptr %5811, align 1, !tbaa !9, !range !11, !noundef !12
  %5814 = trunc i8 %5813 to i1
  %5815 = zext i1 %5814 to i32
  %5816 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef %5815)
          to label %5817 unwind label %1026

5817:                                             ; preds = %5812
  %5818 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %5819 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5818, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %5820 unwind label %1026

5820:                                             ; preds = %5817
  %5821 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %5822 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5821, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %5823 unwind label %1026

5823:                                             ; preds = %5820
  call void @llvm.lifetime.start.p0(i64 1, ptr %353) #5
  store i8 0, ptr %353, align 1, !tbaa !9
  %5824 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %5825 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5824, ptr noundef nonnull align 1 dereferenceable(1) %353)
          to label %5826 unwind label %5852

5826:                                             ; preds = %5823
  call void @llvm.lifetime.end.p0(i64 1, ptr %353) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %354) #5
  store i8 1, ptr %354, align 1, !tbaa !9
  %5827 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %5828 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5827, ptr noundef nonnull align 1 dereferenceable(1) %354)
          to label %5829 unwind label %5856

5829:                                             ; preds = %5826
  call void @llvm.lifetime.end.p0(i64 1, ptr %354) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5830 unwind label %1026

5830:                                             ; preds = %5829
  br label %5831

5831:                                             ; preds = %5865, %5830
  br label %5832

5832:                                             ; preds = %5831
  call void @llvm.lifetime.start.p0(i64 1, ptr %355) #5
  store i8 0, ptr %355, align 1, !tbaa !9
  %5833 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %5834 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5833, ptr noundef nonnull align 1 dereferenceable(1) %355)
          to label %5835 unwind label %5860

5835:                                             ; preds = %5832
  call void @llvm.lifetime.end.p0(i64 1, ptr %355) #5
  %5836 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %5837 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %5836)
          to label %5838 unwind label %1026

5838:                                             ; preds = %5835
  %5839 = load i8, ptr %5837, align 1, !tbaa !9, !range !11, !noundef !12
  %5840 = trunc i8 %5839 to i1
  br i1 %5840, label %5841, label %5864

5841:                                             ; preds = %5838
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5842 unwind label %1026

5842:                                             ; preds = %5841
  br label %5866

5843:                                             ; preds = %5804
  %5844 = landingpad { ptr, i32 }
          cleanup
  %5845 = extractvalue { ptr, i32 } %5844, 0
  store ptr %5845, ptr %5, align 8
  %5846 = extractvalue { ptr, i32 } %5844, 1
  store i32 %5846, ptr %6, align 4
  br label %5851

5847:                                             ; preds = %5807, %5805
  %5848 = landingpad { ptr, i32 }
          cleanup
  %5849 = extractvalue { ptr, i32 } %5848, 0
  store ptr %5849, ptr %5, align 8
  %5850 = extractvalue { ptr, i32 } %5848, 1
  store i32 %5850, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %352) #5
  br label %5851

5851:                                             ; preds = %5847, %5843
  call void @llvm.lifetime.end.p0(i64 24, ptr %352) #5
  br label %12015

5852:                                             ; preds = %5823
  %5853 = landingpad { ptr, i32 }
          cleanup
  %5854 = extractvalue { ptr, i32 } %5853, 0
  store ptr %5854, ptr %5, align 8
  %5855 = extractvalue { ptr, i32 } %5853, 1
  store i32 %5855, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %353) #5
  br label %12015

5856:                                             ; preds = %5826
  %5857 = landingpad { ptr, i32 }
          cleanup
  %5858 = extractvalue { ptr, i32 } %5857, 0
  store ptr %5858, ptr %5, align 8
  %5859 = extractvalue { ptr, i32 } %5857, 1
  store i32 %5859, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %354) #5
  br label %12015

5860:                                             ; preds = %5832
  %5861 = landingpad { ptr, i32 }
          cleanup
  %5862 = extractvalue { ptr, i32 } %5861, 0
  store ptr %5862, ptr %5, align 8
  %5863 = extractvalue { ptr, i32 } %5861, 1
  store i32 %5863, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %355) #5
  br label %12015

5864:                                             ; preds = %5838
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5865 unwind label %1026

5865:                                             ; preds = %5864
  br label %5831, !llvm.loop !82

5866:                                             ; preds = %5842
  br label %7491

5867:                                             ; preds = %5802
  call void @llvm.lifetime.start.p0(i64 24, ptr %356) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %356, i32 noundef 24)
          to label %5868 unwind label %5900

5868:                                             ; preds = %5867
  %5869 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %356)
          to label %5870 unwind label %5904

5870:                                             ; preds = %5868
  %5871 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %5869)
          to label %5872 unwind label %5904

5872:                                             ; preds = %5870
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %356) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %356) #5
  %5873 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 3)
          to label %5874 unwind label %1026

5874:                                             ; preds = %5872
  %5875 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %5876 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5875, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %5877 unwind label %1026

5877:                                             ; preds = %5874
  %5878 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %5879 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5878, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %5880 unwind label %1026

5880:                                             ; preds = %5877
  call void @llvm.lifetime.start.p0(i64 1, ptr %357) #5
  store i8 0, ptr %357, align 1, !tbaa !9
  %5881 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %5882 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5881, ptr noundef nonnull align 1 dereferenceable(1) %357)
          to label %5883 unwind label %5909

5883:                                             ; preds = %5880
  call void @llvm.lifetime.end.p0(i64 1, ptr %357) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %358) #5
  store i8 1, ptr %358, align 1, !tbaa !9
  %5884 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %5885 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5884, ptr noundef nonnull align 1 dereferenceable(1) %358)
          to label %5886 unwind label %5913

5886:                                             ; preds = %5883
  call void @llvm.lifetime.end.p0(i64 1, ptr %358) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5887 unwind label %1026

5887:                                             ; preds = %5886
  br label %5888

5888:                                             ; preds = %5922, %5887
  br label %5889

5889:                                             ; preds = %5888
  call void @llvm.lifetime.start.p0(i64 1, ptr %359) #5
  store i8 0, ptr %359, align 1, !tbaa !9
  %5890 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %5891 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5890, ptr noundef nonnull align 1 dereferenceable(1) %359)
          to label %5892 unwind label %5917

5892:                                             ; preds = %5889
  call void @llvm.lifetime.end.p0(i64 1, ptr %359) #5
  %5893 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %5894 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %5893)
          to label %5895 unwind label %1026

5895:                                             ; preds = %5892
  %5896 = load i8, ptr %5894, align 1, !tbaa !9, !range !11, !noundef !12
  %5897 = trunc i8 %5896 to i1
  br i1 %5897, label %5898, label %5921

5898:                                             ; preds = %5895
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5899 unwind label %1026

5899:                                             ; preds = %5898
  br label %5923

5900:                                             ; preds = %5867
  %5901 = landingpad { ptr, i32 }
          cleanup
  %5902 = extractvalue { ptr, i32 } %5901, 0
  store ptr %5902, ptr %5, align 8
  %5903 = extractvalue { ptr, i32 } %5901, 1
  store i32 %5903, ptr %6, align 4
  br label %5908

5904:                                             ; preds = %5870, %5868
  %5905 = landingpad { ptr, i32 }
          cleanup
  %5906 = extractvalue { ptr, i32 } %5905, 0
  store ptr %5906, ptr %5, align 8
  %5907 = extractvalue { ptr, i32 } %5905, 1
  store i32 %5907, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %356) #5
  br label %5908

5908:                                             ; preds = %5904, %5900
  call void @llvm.lifetime.end.p0(i64 24, ptr %356) #5
  br label %12015

5909:                                             ; preds = %5880
  %5910 = landingpad { ptr, i32 }
          cleanup
  %5911 = extractvalue { ptr, i32 } %5910, 0
  store ptr %5911, ptr %5, align 8
  %5912 = extractvalue { ptr, i32 } %5910, 1
  store i32 %5912, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %357) #5
  br label %12015

5913:                                             ; preds = %5883
  %5914 = landingpad { ptr, i32 }
          cleanup
  %5915 = extractvalue { ptr, i32 } %5914, 0
  store ptr %5915, ptr %5, align 8
  %5916 = extractvalue { ptr, i32 } %5914, 1
  store i32 %5916, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %358) #5
  br label %12015

5917:                                             ; preds = %5889
  %5918 = landingpad { ptr, i32 }
          cleanup
  %5919 = extractvalue { ptr, i32 } %5918, 0
  store ptr %5919, ptr %5, align 8
  %5920 = extractvalue { ptr, i32 } %5918, 1
  store i32 %5920, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %359) #5
  br label %12015

5921:                                             ; preds = %5895
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5922 unwind label %1026

5922:                                             ; preds = %5921
  br label %5888, !llvm.loop !83

5923:                                             ; preds = %5899
  br label %7491

5924:                                             ; preds = %5802
  call void @llvm.lifetime.start.p0(i64 24, ptr %360) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %360, i32 noundef 24)
          to label %5925 unwind label %5957

5925:                                             ; preds = %5924
  %5926 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %360)
          to label %5927 unwind label %5961

5927:                                             ; preds = %5925
  %5928 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %5926)
          to label %5929 unwind label %5961

5929:                                             ; preds = %5927
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %360) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %360) #5
  %5930 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 32)
          to label %5931 unwind label %1026

5931:                                             ; preds = %5929
  %5932 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %5933 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5932, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %5934 unwind label %1026

5934:                                             ; preds = %5931
  %5935 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %5936 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %5935, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %5937 unwind label %1026

5937:                                             ; preds = %5934
  call void @llvm.lifetime.start.p0(i64 1, ptr %361) #5
  store i8 0, ptr %361, align 1, !tbaa !9
  %5938 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %5939 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5938, ptr noundef nonnull align 1 dereferenceable(1) %361)
          to label %5940 unwind label %5966

5940:                                             ; preds = %5937
  call void @llvm.lifetime.end.p0(i64 1, ptr %361) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %362) #5
  store i8 1, ptr %362, align 1, !tbaa !9
  %5941 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %5942 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5941, ptr noundef nonnull align 1 dereferenceable(1) %362)
          to label %5943 unwind label %5970

5943:                                             ; preds = %5940
  call void @llvm.lifetime.end.p0(i64 1, ptr %362) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5944 unwind label %1026

5944:                                             ; preds = %5943
  br label %5945

5945:                                             ; preds = %5979, %5944
  br label %5946

5946:                                             ; preds = %5945
  call void @llvm.lifetime.start.p0(i64 1, ptr %363) #5
  store i8 0, ptr %363, align 1, !tbaa !9
  %5947 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %5948 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %5947, ptr noundef nonnull align 1 dereferenceable(1) %363)
          to label %5949 unwind label %5974

5949:                                             ; preds = %5946
  call void @llvm.lifetime.end.p0(i64 1, ptr %363) #5
  %5950 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %5951 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %5950)
          to label %5952 unwind label %1026

5952:                                             ; preds = %5949
  %5953 = load i8, ptr %5951, align 1, !tbaa !9, !range !11, !noundef !12
  %5954 = trunc i8 %5953 to i1
  br i1 %5954, label %5955, label %5978

5955:                                             ; preds = %5952
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5956 unwind label %1026

5956:                                             ; preds = %5955
  br label %5980

5957:                                             ; preds = %5924
  %5958 = landingpad { ptr, i32 }
          cleanup
  %5959 = extractvalue { ptr, i32 } %5958, 0
  store ptr %5959, ptr %5, align 8
  %5960 = extractvalue { ptr, i32 } %5958, 1
  store i32 %5960, ptr %6, align 4
  br label %5965

5961:                                             ; preds = %5927, %5925
  %5962 = landingpad { ptr, i32 }
          cleanup
  %5963 = extractvalue { ptr, i32 } %5962, 0
  store ptr %5963, ptr %5, align 8
  %5964 = extractvalue { ptr, i32 } %5962, 1
  store i32 %5964, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %360) #5
  br label %5965

5965:                                             ; preds = %5961, %5957
  call void @llvm.lifetime.end.p0(i64 24, ptr %360) #5
  br label %12015

5966:                                             ; preds = %5937
  %5967 = landingpad { ptr, i32 }
          cleanup
  %5968 = extractvalue { ptr, i32 } %5967, 0
  store ptr %5968, ptr %5, align 8
  %5969 = extractvalue { ptr, i32 } %5967, 1
  store i32 %5969, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %361) #5
  br label %12015

5970:                                             ; preds = %5940
  %5971 = landingpad { ptr, i32 }
          cleanup
  %5972 = extractvalue { ptr, i32 } %5971, 0
  store ptr %5972, ptr %5, align 8
  %5973 = extractvalue { ptr, i32 } %5971, 1
  store i32 %5973, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %362) #5
  br label %12015

5974:                                             ; preds = %5946
  %5975 = landingpad { ptr, i32 }
          cleanup
  %5976 = extractvalue { ptr, i32 } %5975, 0
  store ptr %5976, ptr %5, align 8
  %5977 = extractvalue { ptr, i32 } %5975, 1
  store i32 %5977, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %363) #5
  br label %12015

5978:                                             ; preds = %5952
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %5979 unwind label %1026

5979:                                             ; preds = %5978
  br label %5945, !llvm.loop !84

5980:                                             ; preds = %5956
  br label %7491

5981:                                             ; preds = %5802
  call void @llvm.lifetime.start.p0(i64 24, ptr %364) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %364, i32 noundef 24)
          to label %5982 unwind label %6025

5982:                                             ; preds = %5981
  %5983 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %364)
          to label %5984 unwind label %6029

5984:                                             ; preds = %5982
  %5985 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %5983)
          to label %5986 unwind label %6029

5986:                                             ; preds = %5984
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %364) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %364) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %365) #5
  invoke void @_ZN5sc_dt6sc_intILi10EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %365, i32 noundef 0)
          to label %5987 unwind label %6034

5987:                                             ; preds = %5986
  %5988 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 5
  %5989 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %5988)
          to label %5990 unwind label %6038

5990:                                             ; preds = %5987
  %5991 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 6
  %5992 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi2EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %5991)
          to label %5993 unwind label %6038

5993:                                             ; preds = %5990
  %5994 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %5989, ptr noundef nonnull align 8 dereferenceable(8) %5992)
          to label %5995 unwind label %6038

5995:                                             ; preds = %5993
  %5996 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %365, ptr noundef nonnull align 8 dereferenceable(8) %5994)
          to label %5997 unwind label %6038

5997:                                             ; preds = %5995
  %5998 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 1 dereferenceable(1) %5996)
          to label %5999 unwind label %6038

5999:                                             ; preds = %5997
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %365) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %365) #5
  %6000 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %6001 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6000, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %6002 unwind label %1026

6002:                                             ; preds = %5999
  %6003 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %6004 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6003, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %6005 unwind label %1026

6005:                                             ; preds = %6002
  call void @llvm.lifetime.start.p0(i64 1, ptr %366) #5
  store i8 0, ptr %366, align 1, !tbaa !9
  %6006 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %6007 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6006, ptr noundef nonnull align 1 dereferenceable(1) %366)
          to label %6008 unwind label %6043

6008:                                             ; preds = %6005
  call void @llvm.lifetime.end.p0(i64 1, ptr %366) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %367) #5
  store i8 1, ptr %367, align 1, !tbaa !9
  %6009 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %6010 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6009, ptr noundef nonnull align 1 dereferenceable(1) %367)
          to label %6011 unwind label %6047

6011:                                             ; preds = %6008
  call void @llvm.lifetime.end.p0(i64 1, ptr %367) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6012 unwind label %1026

6012:                                             ; preds = %6011
  br label %6013

6013:                                             ; preds = %6056, %6012
  br label %6014

6014:                                             ; preds = %6013
  call void @llvm.lifetime.start.p0(i64 1, ptr %368) #5
  store i8 0, ptr %368, align 1, !tbaa !9
  %6015 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %6016 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6015, ptr noundef nonnull align 1 dereferenceable(1) %368)
          to label %6017 unwind label %6051

6017:                                             ; preds = %6014
  call void @llvm.lifetime.end.p0(i64 1, ptr %368) #5
  %6018 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %6019 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %6018)
          to label %6020 unwind label %1026

6020:                                             ; preds = %6017
  %6021 = load i8, ptr %6019, align 1, !tbaa !9, !range !11, !noundef !12
  %6022 = trunc i8 %6021 to i1
  br i1 %6022, label %6023, label %6055

6023:                                             ; preds = %6020
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6024 unwind label %1026

6024:                                             ; preds = %6023
  br label %6057

6025:                                             ; preds = %5981
  %6026 = landingpad { ptr, i32 }
          cleanup
  %6027 = extractvalue { ptr, i32 } %6026, 0
  store ptr %6027, ptr %5, align 8
  %6028 = extractvalue { ptr, i32 } %6026, 1
  store i32 %6028, ptr %6, align 4
  br label %6033

6029:                                             ; preds = %5984, %5982
  %6030 = landingpad { ptr, i32 }
          cleanup
  %6031 = extractvalue { ptr, i32 } %6030, 0
  store ptr %6031, ptr %5, align 8
  %6032 = extractvalue { ptr, i32 } %6030, 1
  store i32 %6032, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %364) #5
  br label %6033

6033:                                             ; preds = %6029, %6025
  call void @llvm.lifetime.end.p0(i64 24, ptr %364) #5
  br label %12015

6034:                                             ; preds = %5986
  %6035 = landingpad { ptr, i32 }
          cleanup
  %6036 = extractvalue { ptr, i32 } %6035, 0
  store ptr %6036, ptr %5, align 8
  %6037 = extractvalue { ptr, i32 } %6035, 1
  store i32 %6037, ptr %6, align 4
  br label %6042

6038:                                             ; preds = %5997, %5995, %5993, %5990, %5987
  %6039 = landingpad { ptr, i32 }
          cleanup
  %6040 = extractvalue { ptr, i32 } %6039, 0
  store ptr %6040, ptr %5, align 8
  %6041 = extractvalue { ptr, i32 } %6039, 1
  store i32 %6041, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %365) #5
  br label %6042

6042:                                             ; preds = %6038, %6034
  call void @llvm.lifetime.end.p0(i64 24, ptr %365) #5
  br label %12015

6043:                                             ; preds = %6005
  %6044 = landingpad { ptr, i32 }
          cleanup
  %6045 = extractvalue { ptr, i32 } %6044, 0
  store ptr %6045, ptr %5, align 8
  %6046 = extractvalue { ptr, i32 } %6044, 1
  store i32 %6046, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %366) #5
  br label %12015

6047:                                             ; preds = %6008
  %6048 = landingpad { ptr, i32 }
          cleanup
  %6049 = extractvalue { ptr, i32 } %6048, 0
  store ptr %6049, ptr %5, align 8
  %6050 = extractvalue { ptr, i32 } %6048, 1
  store i32 %6050, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %367) #5
  br label %12015

6051:                                             ; preds = %6014
  %6052 = landingpad { ptr, i32 }
          cleanup
  %6053 = extractvalue { ptr, i32 } %6052, 0
  store ptr %6053, ptr %5, align 8
  %6054 = extractvalue { ptr, i32 } %6052, 1
  store i32 %6054, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %368) #5
  br label %12015

6055:                                             ; preds = %6020
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6056 unwind label %1026

6056:                                             ; preds = %6055
  br label %6013, !llvm.loop !85

6057:                                             ; preds = %6024
  br label %7491

6058:                                             ; preds = %5802
  %6059 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, i32 noundef 6)
          to label %6060 unwind label %1026

6060:                                             ; preds = %6058
  %6061 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 0)
          to label %6062 unwind label %1026

6062:                                             ; preds = %6060
  %6063 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %6061)
          to label %6064 unwind label %1026

6064:                                             ; preds = %6062
  br i1 %6063, label %6065, label %6079

6065:                                             ; preds = %6064
  call void @llvm.lifetime.start.p0(i64 24, ptr %369) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %369, i32 noundef 8)
          to label %6066 unwind label %6070

6066:                                             ; preds = %6065
  %6067 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %6068 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6067, ptr noundef nonnull align 8 dereferenceable(24) %369)
          to label %6069 unwind label %6074

6069:                                             ; preds = %6066
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %369) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %369) #5
  br label %6093

6070:                                             ; preds = %6065
  %6071 = landingpad { ptr, i32 }
          cleanup
  %6072 = extractvalue { ptr, i32 } %6071, 0
  store ptr %6072, ptr %5, align 8
  %6073 = extractvalue { ptr, i32 } %6071, 1
  store i32 %6073, ptr %6, align 4
  br label %6078

6074:                                             ; preds = %6066
  %6075 = landingpad { ptr, i32 }
          cleanup
  %6076 = extractvalue { ptr, i32 } %6075, 0
  store ptr %6076, ptr %5, align 8
  %6077 = extractvalue { ptr, i32 } %6075, 1
  store i32 %6077, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %369) #5
  br label %6078

6078:                                             ; preds = %6074, %6070
  call void @llvm.lifetime.end.p0(i64 24, ptr %369) #5
  br label %12015

6079:                                             ; preds = %6064
  call void @llvm.lifetime.start.p0(i64 24, ptr %370) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %370, i32 noundef 16)
          to label %6080 unwind label %6084

6080:                                             ; preds = %6079
  %6081 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %6082 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6081, ptr noundef nonnull align 8 dereferenceable(24) %370)
          to label %6083 unwind label %6088

6083:                                             ; preds = %6080
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %370) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %370) #5
  br label %6093

6084:                                             ; preds = %6079
  %6085 = landingpad { ptr, i32 }
          cleanup
  %6086 = extractvalue { ptr, i32 } %6085, 0
  store ptr %6086, ptr %5, align 8
  %6087 = extractvalue { ptr, i32 } %6085, 1
  store i32 %6087, ptr %6, align 4
  br label %6092

6088:                                             ; preds = %6080
  %6089 = landingpad { ptr, i32 }
          cleanup
  %6090 = extractvalue { ptr, i32 } %6089, 0
  store ptr %6090, ptr %5, align 8
  %6091 = extractvalue { ptr, i32 } %6089, 1
  store i32 %6091, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %370) #5
  br label %6092

6092:                                             ; preds = %6088, %6084
  call void @llvm.lifetime.end.p0(i64 24, ptr %370) #5
  br label %12015

6093:                                             ; preds = %6083, %6069
  call void @llvm.lifetime.start.p0(i64 24, ptr %371) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %372) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %372, i32 noundef 24)
          to label %6094 unwind label %6125

6094:                                             ; preds = %6093
  %6095 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %372)
          to label %6096 unwind label %6129

6096:                                             ; preds = %6094
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %371, ptr noundef nonnull align 1 dereferenceable(1) %6095)
          to label %6097 unwind label %6129

6097:                                             ; preds = %6096
  %6098 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %6099 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6098, ptr noundef nonnull align 8 dereferenceable(24) %371)
          to label %6100 unwind label %6133

6100:                                             ; preds = %6097
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %371) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %372) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %372) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %371) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %373) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %373, i32 noundef 3)
          to label %6101 unwind label %6139

6101:                                             ; preds = %6100
  %6102 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %6103 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6102, ptr noundef nonnull align 8 dereferenceable(24) %373)
          to label %6104 unwind label %6143

6104:                                             ; preds = %6101
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %373) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %373) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %374) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %374, i32 noundef 3)
          to label %6105 unwind label %6148

6105:                                             ; preds = %6104
  %6106 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %6107 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6106, ptr noundef nonnull align 8 dereferenceable(24) %374)
          to label %6108 unwind label %6152

6108:                                             ; preds = %6105
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %374) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %374) #5
  %6109 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %6110 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6109, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %6111 unwind label %1026

6111:                                             ; preds = %6108
  call void @llvm.lifetime.start.p0(i64 1, ptr %375) #5
  store i8 1, ptr %375, align 1, !tbaa !9
  %6112 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %6113 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6112, ptr noundef nonnull align 1 dereferenceable(1) %375)
          to label %6114 unwind label %6157

6114:                                             ; preds = %6111
  call void @llvm.lifetime.end.p0(i64 1, ptr %375) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6115 unwind label %1026

6115:                                             ; preds = %6114
  br label %6116

6116:                                             ; preds = %6124, %6115
  %6117 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %6118 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %6117)
          to label %6119 unwind label %1026

6119:                                             ; preds = %6116
  %6120 = load i8, ptr %6118, align 1, !tbaa !9, !range !11, !noundef !12
  %6121 = trunc i8 %6120 to i1
  %6122 = xor i1 %6121, true
  br i1 %6122, label %6123, label %6161

6123:                                             ; preds = %6119
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6124 unwind label %1026

6124:                                             ; preds = %6123
  br label %6116, !llvm.loop !86

6125:                                             ; preds = %6093
  %6126 = landingpad { ptr, i32 }
          cleanup
  %6127 = extractvalue { ptr, i32 } %6126, 0
  store ptr %6127, ptr %5, align 8
  %6128 = extractvalue { ptr, i32 } %6126, 1
  store i32 %6128, ptr %6, align 4
  br label %6138

6129:                                             ; preds = %6096, %6094
  %6130 = landingpad { ptr, i32 }
          cleanup
  %6131 = extractvalue { ptr, i32 } %6130, 0
  store ptr %6131, ptr %5, align 8
  %6132 = extractvalue { ptr, i32 } %6130, 1
  store i32 %6132, ptr %6, align 4
  br label %6137

6133:                                             ; preds = %6097
  %6134 = landingpad { ptr, i32 }
          cleanup
  %6135 = extractvalue { ptr, i32 } %6134, 0
  store ptr %6135, ptr %5, align 8
  %6136 = extractvalue { ptr, i32 } %6134, 1
  store i32 %6136, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %371) #5
  br label %6137

6137:                                             ; preds = %6133, %6129
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %372) #5
  br label %6138

6138:                                             ; preds = %6137, %6125
  call void @llvm.lifetime.end.p0(i64 24, ptr %372) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %371) #5
  br label %12015

6139:                                             ; preds = %6100
  %6140 = landingpad { ptr, i32 }
          cleanup
  %6141 = extractvalue { ptr, i32 } %6140, 0
  store ptr %6141, ptr %5, align 8
  %6142 = extractvalue { ptr, i32 } %6140, 1
  store i32 %6142, ptr %6, align 4
  br label %6147

6143:                                             ; preds = %6101
  %6144 = landingpad { ptr, i32 }
          cleanup
  %6145 = extractvalue { ptr, i32 } %6144, 0
  store ptr %6145, ptr %5, align 8
  %6146 = extractvalue { ptr, i32 } %6144, 1
  store i32 %6146, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %373) #5
  br label %6147

6147:                                             ; preds = %6143, %6139
  call void @llvm.lifetime.end.p0(i64 24, ptr %373) #5
  br label %12015

6148:                                             ; preds = %6104
  %6149 = landingpad { ptr, i32 }
          cleanup
  %6150 = extractvalue { ptr, i32 } %6149, 0
  store ptr %6150, ptr %5, align 8
  %6151 = extractvalue { ptr, i32 } %6149, 1
  store i32 %6151, ptr %6, align 4
  br label %6156

6152:                                             ; preds = %6105
  %6153 = landingpad { ptr, i32 }
          cleanup
  %6154 = extractvalue { ptr, i32 } %6153, 0
  store ptr %6154, ptr %5, align 8
  %6155 = extractvalue { ptr, i32 } %6153, 1
  store i32 %6155, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %374) #5
  br label %6156

6156:                                             ; preds = %6152, %6148
  call void @llvm.lifetime.end.p0(i64 24, ptr %374) #5
  br label %12015

6157:                                             ; preds = %6111
  %6158 = landingpad { ptr, i32 }
          cleanup
  %6159 = extractvalue { ptr, i32 } %6158, 0
  store ptr %6159, ptr %5, align 8
  %6160 = extractvalue { ptr, i32 } %6158, 1
  store i32 %6160, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %375) #5
  br label %12015

6161:                                             ; preds = %6119
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6162 unwind label %1026

6162:                                             ; preds = %6161
  call void @llvm.lifetime.start.p0(i64 1, ptr %376) #5
  store i8 0, ptr %376, align 1, !tbaa !9
  %6163 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %6164 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6163, ptr noundef nonnull align 1 dereferenceable(1) %376)
          to label %6165 unwind label %6167

6165:                                             ; preds = %6162
  call void @llvm.lifetime.end.p0(i64 1, ptr %376) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6166 unwind label %1026

6166:                                             ; preds = %6165
  br label %7491

6167:                                             ; preds = %6162
  %6168 = landingpad { ptr, i32 }
          cleanup
  %6169 = extractvalue { ptr, i32 } %6168, 0
  store ptr %6169, ptr %5, align 8
  %6170 = extractvalue { ptr, i32 } %6168, 1
  store i32 %6170, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %376) #5
  br label %12015

6171:                                             ; preds = %5802
  %6172 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, i32 noundef 64)
          to label %6173 unwind label %1026

6173:                                             ; preds = %6171
  %6174 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 0)
          to label %6175 unwind label %1026

6175:                                             ; preds = %6173
  %6176 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %6174)
          to label %6177 unwind label %1026

6177:                                             ; preds = %6175
  br i1 %6176, label %6178, label %6192

6178:                                             ; preds = %6177
  call void @llvm.lifetime.start.p0(i64 24, ptr %377) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %377, i32 noundef 64)
          to label %6179 unwind label %6183

6179:                                             ; preds = %6178
  %6180 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %6181 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6180, ptr noundef nonnull align 8 dereferenceable(24) %377)
          to label %6182 unwind label %6187

6182:                                             ; preds = %6179
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %377) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %377) #5
  br label %6206

6183:                                             ; preds = %6178
  %6184 = landingpad { ptr, i32 }
          cleanup
  %6185 = extractvalue { ptr, i32 } %6184, 0
  store ptr %6185, ptr %5, align 8
  %6186 = extractvalue { ptr, i32 } %6184, 1
  store i32 %6186, ptr %6, align 4
  br label %6191

6187:                                             ; preds = %6179
  %6188 = landingpad { ptr, i32 }
          cleanup
  %6189 = extractvalue { ptr, i32 } %6188, 0
  store ptr %6189, ptr %5, align 8
  %6190 = extractvalue { ptr, i32 } %6188, 1
  store i32 %6190, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %377) #5
  br label %6191

6191:                                             ; preds = %6187, %6183
  call void @llvm.lifetime.end.p0(i64 24, ptr %377) #5
  br label %12015

6192:                                             ; preds = %6177
  call void @llvm.lifetime.start.p0(i64 24, ptr %378) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %378, i32 noundef 96)
          to label %6193 unwind label %6197

6193:                                             ; preds = %6192
  %6194 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %6195 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6194, ptr noundef nonnull align 8 dereferenceable(24) %378)
          to label %6196 unwind label %6201

6196:                                             ; preds = %6193
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %378) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %378) #5
  br label %6206

6197:                                             ; preds = %6192
  %6198 = landingpad { ptr, i32 }
          cleanup
  %6199 = extractvalue { ptr, i32 } %6198, 0
  store ptr %6199, ptr %5, align 8
  %6200 = extractvalue { ptr, i32 } %6198, 1
  store i32 %6200, ptr %6, align 4
  br label %6205

6201:                                             ; preds = %6193
  %6202 = landingpad { ptr, i32 }
          cleanup
  %6203 = extractvalue { ptr, i32 } %6202, 0
  store ptr %6203, ptr %5, align 8
  %6204 = extractvalue { ptr, i32 } %6202, 1
  store i32 %6204, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %378) #5
  br label %6205

6205:                                             ; preds = %6201, %6197
  call void @llvm.lifetime.end.p0(i64 24, ptr %378) #5
  br label %12015

6206:                                             ; preds = %6196, %6182
  call void @llvm.lifetime.start.p0(i64 24, ptr %379) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %380) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %380, i32 noundef 24)
          to label %6207 unwind label %6238

6207:                                             ; preds = %6206
  %6208 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %380)
          to label %6209 unwind label %6242

6209:                                             ; preds = %6207
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %379, ptr noundef nonnull align 1 dereferenceable(1) %6208)
          to label %6210 unwind label %6242

6210:                                             ; preds = %6209
  %6211 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %6212 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6211, ptr noundef nonnull align 8 dereferenceable(24) %379)
          to label %6213 unwind label %6246

6213:                                             ; preds = %6210
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %379) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %380) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %380) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %379) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %381) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %381, i32 noundef 32)
          to label %6214 unwind label %6252

6214:                                             ; preds = %6213
  %6215 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %6216 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6215, ptr noundef nonnull align 8 dereferenceable(24) %381)
          to label %6217 unwind label %6256

6217:                                             ; preds = %6214
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %381) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %381) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %382) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %382, i32 noundef 3)
          to label %6218 unwind label %6261

6218:                                             ; preds = %6217
  %6219 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %6220 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6219, ptr noundef nonnull align 8 dereferenceable(24) %382)
          to label %6221 unwind label %6265

6221:                                             ; preds = %6218
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %382) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %382) #5
  %6222 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %6223 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6222, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %6224 unwind label %1026

6224:                                             ; preds = %6221
  call void @llvm.lifetime.start.p0(i64 1, ptr %383) #5
  store i8 1, ptr %383, align 1, !tbaa !9
  %6225 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %6226 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6225, ptr noundef nonnull align 1 dereferenceable(1) %383)
          to label %6227 unwind label %6270

6227:                                             ; preds = %6224
  call void @llvm.lifetime.end.p0(i64 1, ptr %383) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6228 unwind label %1026

6228:                                             ; preds = %6227
  br label %6229

6229:                                             ; preds = %6237, %6228
  %6230 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %6231 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %6230)
          to label %6232 unwind label %1026

6232:                                             ; preds = %6229
  %6233 = load i8, ptr %6231, align 1, !tbaa !9, !range !11, !noundef !12
  %6234 = trunc i8 %6233 to i1
  %6235 = xor i1 %6234, true
  br i1 %6235, label %6236, label %6274

6236:                                             ; preds = %6232
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6237 unwind label %1026

6237:                                             ; preds = %6236
  br label %6229, !llvm.loop !87

6238:                                             ; preds = %6206
  %6239 = landingpad { ptr, i32 }
          cleanup
  %6240 = extractvalue { ptr, i32 } %6239, 0
  store ptr %6240, ptr %5, align 8
  %6241 = extractvalue { ptr, i32 } %6239, 1
  store i32 %6241, ptr %6, align 4
  br label %6251

6242:                                             ; preds = %6209, %6207
  %6243 = landingpad { ptr, i32 }
          cleanup
  %6244 = extractvalue { ptr, i32 } %6243, 0
  store ptr %6244, ptr %5, align 8
  %6245 = extractvalue { ptr, i32 } %6243, 1
  store i32 %6245, ptr %6, align 4
  br label %6250

6246:                                             ; preds = %6210
  %6247 = landingpad { ptr, i32 }
          cleanup
  %6248 = extractvalue { ptr, i32 } %6247, 0
  store ptr %6248, ptr %5, align 8
  %6249 = extractvalue { ptr, i32 } %6247, 1
  store i32 %6249, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %379) #5
  br label %6250

6250:                                             ; preds = %6246, %6242
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %380) #5
  br label %6251

6251:                                             ; preds = %6250, %6238
  call void @llvm.lifetime.end.p0(i64 24, ptr %380) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %379) #5
  br label %12015

6252:                                             ; preds = %6213
  %6253 = landingpad { ptr, i32 }
          cleanup
  %6254 = extractvalue { ptr, i32 } %6253, 0
  store ptr %6254, ptr %5, align 8
  %6255 = extractvalue { ptr, i32 } %6253, 1
  store i32 %6255, ptr %6, align 4
  br label %6260

6256:                                             ; preds = %6214
  %6257 = landingpad { ptr, i32 }
          cleanup
  %6258 = extractvalue { ptr, i32 } %6257, 0
  store ptr %6258, ptr %5, align 8
  %6259 = extractvalue { ptr, i32 } %6257, 1
  store i32 %6259, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %381) #5
  br label %6260

6260:                                             ; preds = %6256, %6252
  call void @llvm.lifetime.end.p0(i64 24, ptr %381) #5
  br label %12015

6261:                                             ; preds = %6217
  %6262 = landingpad { ptr, i32 }
          cleanup
  %6263 = extractvalue { ptr, i32 } %6262, 0
  store ptr %6263, ptr %5, align 8
  %6264 = extractvalue { ptr, i32 } %6262, 1
  store i32 %6264, ptr %6, align 4
  br label %6269

6265:                                             ; preds = %6218
  %6266 = landingpad { ptr, i32 }
          cleanup
  %6267 = extractvalue { ptr, i32 } %6266, 0
  store ptr %6267, ptr %5, align 8
  %6268 = extractvalue { ptr, i32 } %6266, 1
  store i32 %6268, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %382) #5
  br label %6269

6269:                                             ; preds = %6265, %6261
  call void @llvm.lifetime.end.p0(i64 24, ptr %382) #5
  br label %12015

6270:                                             ; preds = %6224
  %6271 = landingpad { ptr, i32 }
          cleanup
  %6272 = extractvalue { ptr, i32 } %6271, 0
  store ptr %6272, ptr %5, align 8
  %6273 = extractvalue { ptr, i32 } %6271, 1
  store i32 %6273, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %383) #5
  br label %12015

6274:                                             ; preds = %6232
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6275 unwind label %1026

6275:                                             ; preds = %6274
  call void @llvm.lifetime.start.p0(i64 1, ptr %384) #5
  store i8 0, ptr %384, align 1, !tbaa !9
  %6276 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %6277 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6276, ptr noundef nonnull align 1 dereferenceable(1) %384)
          to label %6278 unwind label %6280

6278:                                             ; preds = %6275
  call void @llvm.lifetime.end.p0(i64 1, ptr %384) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6279 unwind label %1026

6279:                                             ; preds = %6278
  br label %7491

6280:                                             ; preds = %6275
  %6281 = landingpad { ptr, i32 }
          cleanup
  %6282 = extractvalue { ptr, i32 } %6281, 0
  store ptr %6282, ptr %5, align 8
  %6283 = extractvalue { ptr, i32 } %6281, 1
  store i32 %6283, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %384) #5
  br label %12015

6284:                                             ; preds = %5802
  %6285 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, i32 noundef 64)
          to label %6286 unwind label %1026

6286:                                             ; preds = %6284
  %6287 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 0)
          to label %6288 unwind label %1026

6288:                                             ; preds = %6286
  %6289 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %6287)
          to label %6290 unwind label %1026

6290:                                             ; preds = %6288
  br i1 %6289, label %6291, label %6305

6291:                                             ; preds = %6290
  call void @llvm.lifetime.start.p0(i64 24, ptr %385) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %385, i32 noundef 128)
          to label %6292 unwind label %6296

6292:                                             ; preds = %6291
  %6293 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %6294 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6293, ptr noundef nonnull align 8 dereferenceable(24) %385)
          to label %6295 unwind label %6300

6295:                                             ; preds = %6292
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %385) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %385) #5
  br label %6319

6296:                                             ; preds = %6291
  %6297 = landingpad { ptr, i32 }
          cleanup
  %6298 = extractvalue { ptr, i32 } %6297, 0
  store ptr %6298, ptr %5, align 8
  %6299 = extractvalue { ptr, i32 } %6297, 1
  store i32 %6299, ptr %6, align 4
  br label %6304

6300:                                             ; preds = %6292
  %6301 = landingpad { ptr, i32 }
          cleanup
  %6302 = extractvalue { ptr, i32 } %6301, 0
  store ptr %6302, ptr %5, align 8
  %6303 = extractvalue { ptr, i32 } %6301, 1
  store i32 %6303, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %385) #5
  br label %6304

6304:                                             ; preds = %6300, %6296
  call void @llvm.lifetime.end.p0(i64 24, ptr %385) #5
  br label %12015

6305:                                             ; preds = %6290
  call void @llvm.lifetime.start.p0(i64 24, ptr %386) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %386, i32 noundef 160)
          to label %6306 unwind label %6310

6306:                                             ; preds = %6305
  %6307 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %6308 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6307, ptr noundef nonnull align 8 dereferenceable(24) %386)
          to label %6309 unwind label %6314

6309:                                             ; preds = %6306
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %386) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %386) #5
  br label %6319

6310:                                             ; preds = %6305
  %6311 = landingpad { ptr, i32 }
          cleanup
  %6312 = extractvalue { ptr, i32 } %6311, 0
  store ptr %6312, ptr %5, align 8
  %6313 = extractvalue { ptr, i32 } %6311, 1
  store i32 %6313, ptr %6, align 4
  br label %6318

6314:                                             ; preds = %6306
  %6315 = landingpad { ptr, i32 }
          cleanup
  %6316 = extractvalue { ptr, i32 } %6315, 0
  store ptr %6316, ptr %5, align 8
  %6317 = extractvalue { ptr, i32 } %6315, 1
  store i32 %6317, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %386) #5
  br label %6318

6318:                                             ; preds = %6314, %6310
  call void @llvm.lifetime.end.p0(i64 24, ptr %386) #5
  br label %12015

6319:                                             ; preds = %6309, %6295
  call void @llvm.lifetime.start.p0(i64 24, ptr %387) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %388) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %388, i32 noundef 24)
          to label %6320 unwind label %6351

6320:                                             ; preds = %6319
  %6321 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %388)
          to label %6322 unwind label %6355

6322:                                             ; preds = %6320
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %387, ptr noundef nonnull align 1 dereferenceable(1) %6321)
          to label %6323 unwind label %6355

6323:                                             ; preds = %6322
  %6324 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %6325 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6324, ptr noundef nonnull align 8 dereferenceable(24) %387)
          to label %6326 unwind label %6359

6326:                                             ; preds = %6323
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %387) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %388) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %388) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %387) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %389) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %389, i32 noundef 32)
          to label %6327 unwind label %6365

6327:                                             ; preds = %6326
  %6328 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %6329 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6328, ptr noundef nonnull align 8 dereferenceable(24) %389)
          to label %6330 unwind label %6369

6330:                                             ; preds = %6327
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %389) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %389) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %390) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %390, i32 noundef 3)
          to label %6331 unwind label %6374

6331:                                             ; preds = %6330
  %6332 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %6333 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6332, ptr noundef nonnull align 8 dereferenceable(24) %390)
          to label %6334 unwind label %6378

6334:                                             ; preds = %6331
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %390) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %390) #5
  %6335 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %6336 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6335, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %6337 unwind label %1026

6337:                                             ; preds = %6334
  call void @llvm.lifetime.start.p0(i64 1, ptr %391) #5
  store i8 1, ptr %391, align 1, !tbaa !9
  %6338 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %6339 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6338, ptr noundef nonnull align 1 dereferenceable(1) %391)
          to label %6340 unwind label %6383

6340:                                             ; preds = %6337
  call void @llvm.lifetime.end.p0(i64 1, ptr %391) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6341 unwind label %1026

6341:                                             ; preds = %6340
  br label %6342

6342:                                             ; preds = %6350, %6341
  %6343 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %6344 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %6343)
          to label %6345 unwind label %1026

6345:                                             ; preds = %6342
  %6346 = load i8, ptr %6344, align 1, !tbaa !9, !range !11, !noundef !12
  %6347 = trunc i8 %6346 to i1
  %6348 = xor i1 %6347, true
  br i1 %6348, label %6349, label %6387

6349:                                             ; preds = %6345
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6350 unwind label %1026

6350:                                             ; preds = %6349
  br label %6342, !llvm.loop !88

6351:                                             ; preds = %6319
  %6352 = landingpad { ptr, i32 }
          cleanup
  %6353 = extractvalue { ptr, i32 } %6352, 0
  store ptr %6353, ptr %5, align 8
  %6354 = extractvalue { ptr, i32 } %6352, 1
  store i32 %6354, ptr %6, align 4
  br label %6364

6355:                                             ; preds = %6322, %6320
  %6356 = landingpad { ptr, i32 }
          cleanup
  %6357 = extractvalue { ptr, i32 } %6356, 0
  store ptr %6357, ptr %5, align 8
  %6358 = extractvalue { ptr, i32 } %6356, 1
  store i32 %6358, ptr %6, align 4
  br label %6363

6359:                                             ; preds = %6323
  %6360 = landingpad { ptr, i32 }
          cleanup
  %6361 = extractvalue { ptr, i32 } %6360, 0
  store ptr %6361, ptr %5, align 8
  %6362 = extractvalue { ptr, i32 } %6360, 1
  store i32 %6362, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %387) #5
  br label %6363

6363:                                             ; preds = %6359, %6355
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %388) #5
  br label %6364

6364:                                             ; preds = %6363, %6351
  call void @llvm.lifetime.end.p0(i64 24, ptr %388) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %387) #5
  br label %12015

6365:                                             ; preds = %6326
  %6366 = landingpad { ptr, i32 }
          cleanup
  %6367 = extractvalue { ptr, i32 } %6366, 0
  store ptr %6367, ptr %5, align 8
  %6368 = extractvalue { ptr, i32 } %6366, 1
  store i32 %6368, ptr %6, align 4
  br label %6373

6369:                                             ; preds = %6327
  %6370 = landingpad { ptr, i32 }
          cleanup
  %6371 = extractvalue { ptr, i32 } %6370, 0
  store ptr %6371, ptr %5, align 8
  %6372 = extractvalue { ptr, i32 } %6370, 1
  store i32 %6372, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %389) #5
  br label %6373

6373:                                             ; preds = %6369, %6365
  call void @llvm.lifetime.end.p0(i64 24, ptr %389) #5
  br label %12015

6374:                                             ; preds = %6330
  %6375 = landingpad { ptr, i32 }
          cleanup
  %6376 = extractvalue { ptr, i32 } %6375, 0
  store ptr %6376, ptr %5, align 8
  %6377 = extractvalue { ptr, i32 } %6375, 1
  store i32 %6377, ptr %6, align 4
  br label %6382

6378:                                             ; preds = %6331
  %6379 = landingpad { ptr, i32 }
          cleanup
  %6380 = extractvalue { ptr, i32 } %6379, 0
  store ptr %6380, ptr %5, align 8
  %6381 = extractvalue { ptr, i32 } %6379, 1
  store i32 %6381, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %390) #5
  br label %6382

6382:                                             ; preds = %6378, %6374
  call void @llvm.lifetime.end.p0(i64 24, ptr %390) #5
  br label %12015

6383:                                             ; preds = %6337
  %6384 = landingpad { ptr, i32 }
          cleanup
  %6385 = extractvalue { ptr, i32 } %6384, 0
  store ptr %6385, ptr %5, align 8
  %6386 = extractvalue { ptr, i32 } %6384, 1
  store i32 %6386, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %391) #5
  br label %12015

6387:                                             ; preds = %6345
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6388 unwind label %1026

6388:                                             ; preds = %6387
  call void @llvm.lifetime.start.p0(i64 1, ptr %392) #5
  store i8 0, ptr %392, align 1, !tbaa !9
  %6389 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %6390 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6389, ptr noundef nonnull align 1 dereferenceable(1) %392)
          to label %6391 unwind label %6393

6391:                                             ; preds = %6388
  call void @llvm.lifetime.end.p0(i64 1, ptr %392) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6392 unwind label %1026

6392:                                             ; preds = %6391
  br label %7491

6393:                                             ; preds = %6388
  %6394 = landingpad { ptr, i32 }
          cleanup
  %6395 = extractvalue { ptr, i32 } %6394, 0
  store ptr %6395, ptr %5, align 8
  %6396 = extractvalue { ptr, i32 } %6394, 1
  store i32 %6396, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %392) #5
  br label %12015

6397:                                             ; preds = %5802
  %6398 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 7
  %6399 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %6398)
          to label %6400 unwind label %1026

6400:                                             ; preds = %6397
  %6401 = load i8, ptr %6399, align 1, !tbaa !9, !range !11, !noundef !12
  %6402 = trunc i8 %6401 to i1
  br i1 %6402, label %6419, label %6403

6403:                                             ; preds = %6400
  %6404 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, i32 noundef 12)
          to label %6405 unwind label %1026

6405:                                             ; preds = %6403
  call void @llvm.lifetime.start.p0(i64 24, ptr %393) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %393, i32 noundef 6)
          to label %6406 unwind label %6410

6406:                                             ; preds = %6405
  %6407 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %6408 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6407, ptr noundef nonnull align 8 dereferenceable(24) %393)
          to label %6409 unwind label %6414

6409:                                             ; preds = %6406
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %393) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %393) #5
  br label %6435

6410:                                             ; preds = %6405
  %6411 = landingpad { ptr, i32 }
          cleanup
  %6412 = extractvalue { ptr, i32 } %6411, 0
  store ptr %6412, ptr %5, align 8
  %6413 = extractvalue { ptr, i32 } %6411, 1
  store i32 %6413, ptr %6, align 4
  br label %6418

6414:                                             ; preds = %6406
  %6415 = landingpad { ptr, i32 }
          cleanup
  %6416 = extractvalue { ptr, i32 } %6415, 0
  store ptr %6416, ptr %5, align 8
  %6417 = extractvalue { ptr, i32 } %6415, 1
  store i32 %6417, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %393) #5
  br label %6418

6418:                                             ; preds = %6414, %6410
  call void @llvm.lifetime.end.p0(i64 24, ptr %393) #5
  br label %12015

6419:                                             ; preds = %6400
  %6420 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, i32 noundef 8)
          to label %6421 unwind label %1026

6421:                                             ; preds = %6419
  call void @llvm.lifetime.start.p0(i64 24, ptr %394) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %394, i32 noundef 4)
          to label %6422 unwind label %6426

6422:                                             ; preds = %6421
  %6423 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %6424 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6423, ptr noundef nonnull align 8 dereferenceable(24) %394)
          to label %6425 unwind label %6430

6425:                                             ; preds = %6422
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %394) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %394) #5
  br label %6435

6426:                                             ; preds = %6421
  %6427 = landingpad { ptr, i32 }
          cleanup
  %6428 = extractvalue { ptr, i32 } %6427, 0
  store ptr %6428, ptr %5, align 8
  %6429 = extractvalue { ptr, i32 } %6427, 1
  store i32 %6429, ptr %6, align 4
  br label %6434

6430:                                             ; preds = %6422
  %6431 = landingpad { ptr, i32 }
          cleanup
  %6432 = extractvalue { ptr, i32 } %6431, 0
  store ptr %6432, ptr %5, align 8
  %6433 = extractvalue { ptr, i32 } %6431, 1
  store i32 %6433, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %394) #5
  br label %6434

6434:                                             ; preds = %6430, %6426
  call void @llvm.lifetime.end.p0(i64 24, ptr %394) #5
  br label %12015

6435:                                             ; preds = %6425, %6409
  %6436 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 0)
          to label %6437 unwind label %1026

6437:                                             ; preds = %6435
  %6438 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %6436)
          to label %6439 unwind label %1026

6439:                                             ; preds = %6437
  br i1 %6438, label %6440, label %6454

6440:                                             ; preds = %6439
  call void @llvm.lifetime.start.p0(i64 24, ptr %395) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %395, i32 noundef 32)
          to label %6441 unwind label %6445

6441:                                             ; preds = %6440
  %6442 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %6443 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6442, ptr noundef nonnull align 8 dereferenceable(24) %395)
          to label %6444 unwind label %6449

6444:                                             ; preds = %6441
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %395) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %395) #5
  br label %6468

6445:                                             ; preds = %6440
  %6446 = landingpad { ptr, i32 }
          cleanup
  %6447 = extractvalue { ptr, i32 } %6446, 0
  store ptr %6447, ptr %5, align 8
  %6448 = extractvalue { ptr, i32 } %6446, 1
  store i32 %6448, ptr %6, align 4
  br label %6453

6449:                                             ; preds = %6441
  %6450 = landingpad { ptr, i32 }
          cleanup
  %6451 = extractvalue { ptr, i32 } %6450, 0
  store ptr %6451, ptr %5, align 8
  %6452 = extractvalue { ptr, i32 } %6450, 1
  store i32 %6452, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %395) #5
  br label %6453

6453:                                             ; preds = %6449, %6445
  call void @llvm.lifetime.end.p0(i64 24, ptr %395) #5
  br label %12015

6454:                                             ; preds = %6439
  call void @llvm.lifetime.start.p0(i64 24, ptr %396) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %396, i32 noundef 48)
          to label %6455 unwind label %6459

6455:                                             ; preds = %6454
  %6456 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %6457 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6456, ptr noundef nonnull align 8 dereferenceable(24) %396)
          to label %6458 unwind label %6463

6458:                                             ; preds = %6455
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %396) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %396) #5
  br label %6468

6459:                                             ; preds = %6454
  %6460 = landingpad { ptr, i32 }
          cleanup
  %6461 = extractvalue { ptr, i32 } %6460, 0
  store ptr %6461, ptr %5, align 8
  %6462 = extractvalue { ptr, i32 } %6460, 1
  store i32 %6462, ptr %6, align 4
  br label %6467

6463:                                             ; preds = %6455
  %6464 = landingpad { ptr, i32 }
          cleanup
  %6465 = extractvalue { ptr, i32 } %6464, 0
  store ptr %6465, ptr %5, align 8
  %6466 = extractvalue { ptr, i32 } %6464, 1
  store i32 %6466, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %396) #5
  br label %6467

6467:                                             ; preds = %6463, %6459
  call void @llvm.lifetime.end.p0(i64 24, ptr %396) #5
  br label %12015

6468:                                             ; preds = %6458, %6444
  call void @llvm.lifetime.start.p0(i64 24, ptr %397) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %398) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %398, i32 noundef 24)
          to label %6469 unwind label %6496

6469:                                             ; preds = %6468
  %6470 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %398)
          to label %6471 unwind label %6500

6471:                                             ; preds = %6469
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %397, ptr noundef nonnull align 1 dereferenceable(1) %6470)
          to label %6472 unwind label %6500

6472:                                             ; preds = %6471
  %6473 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %6474 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6473, ptr noundef nonnull align 8 dereferenceable(24) %397)
          to label %6475 unwind label %6504

6475:                                             ; preds = %6472
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %397) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %398) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %398) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %397) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %399) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %399, i32 noundef 3)
          to label %6476 unwind label %6510

6476:                                             ; preds = %6475
  %6477 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %6478 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6477, ptr noundef nonnull align 8 dereferenceable(24) %399)
          to label %6479 unwind label %6514

6479:                                             ; preds = %6476
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %399) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %399) #5
  %6480 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %6481 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6480, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %6482 unwind label %1026

6482:                                             ; preds = %6479
  call void @llvm.lifetime.start.p0(i64 1, ptr %400) #5
  store i8 1, ptr %400, align 1, !tbaa !9
  %6483 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %6484 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6483, ptr noundef nonnull align 1 dereferenceable(1) %400)
          to label %6485 unwind label %6519

6485:                                             ; preds = %6482
  call void @llvm.lifetime.end.p0(i64 1, ptr %400) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6486 unwind label %1026

6486:                                             ; preds = %6485
  br label %6487

6487:                                             ; preds = %6495, %6486
  %6488 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %6489 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %6488)
          to label %6490 unwind label %1026

6490:                                             ; preds = %6487
  %6491 = load i8, ptr %6489, align 1, !tbaa !9, !range !11, !noundef !12
  %6492 = trunc i8 %6491 to i1
  %6493 = xor i1 %6492, true
  br i1 %6493, label %6494, label %6523

6494:                                             ; preds = %6490
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6495 unwind label %1026

6495:                                             ; preds = %6494
  br label %6487, !llvm.loop !89

6496:                                             ; preds = %6468
  %6497 = landingpad { ptr, i32 }
          cleanup
  %6498 = extractvalue { ptr, i32 } %6497, 0
  store ptr %6498, ptr %5, align 8
  %6499 = extractvalue { ptr, i32 } %6497, 1
  store i32 %6499, ptr %6, align 4
  br label %6509

6500:                                             ; preds = %6471, %6469
  %6501 = landingpad { ptr, i32 }
          cleanup
  %6502 = extractvalue { ptr, i32 } %6501, 0
  store ptr %6502, ptr %5, align 8
  %6503 = extractvalue { ptr, i32 } %6501, 1
  store i32 %6503, ptr %6, align 4
  br label %6508

6504:                                             ; preds = %6472
  %6505 = landingpad { ptr, i32 }
          cleanup
  %6506 = extractvalue { ptr, i32 } %6505, 0
  store ptr %6506, ptr %5, align 8
  %6507 = extractvalue { ptr, i32 } %6505, 1
  store i32 %6507, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %397) #5
  br label %6508

6508:                                             ; preds = %6504, %6500
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %398) #5
  br label %6509

6509:                                             ; preds = %6508, %6496
  call void @llvm.lifetime.end.p0(i64 24, ptr %398) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %397) #5
  br label %12015

6510:                                             ; preds = %6475
  %6511 = landingpad { ptr, i32 }
          cleanup
  %6512 = extractvalue { ptr, i32 } %6511, 0
  store ptr %6512, ptr %5, align 8
  %6513 = extractvalue { ptr, i32 } %6511, 1
  store i32 %6513, ptr %6, align 4
  br label %6518

6514:                                             ; preds = %6476
  %6515 = landingpad { ptr, i32 }
          cleanup
  %6516 = extractvalue { ptr, i32 } %6515, 0
  store ptr %6516, ptr %5, align 8
  %6517 = extractvalue { ptr, i32 } %6515, 1
  store i32 %6517, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %399) #5
  br label %6518

6518:                                             ; preds = %6514, %6510
  call void @llvm.lifetime.end.p0(i64 24, ptr %399) #5
  br label %12015

6519:                                             ; preds = %6482
  %6520 = landingpad { ptr, i32 }
          cleanup
  %6521 = extractvalue { ptr, i32 } %6520, 0
  store ptr %6521, ptr %5, align 8
  %6522 = extractvalue { ptr, i32 } %6520, 1
  store i32 %6522, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %400) #5
  br label %12015

6523:                                             ; preds = %6490
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6524 unwind label %1026

6524:                                             ; preds = %6523
  call void @llvm.lifetime.start.p0(i64 1, ptr %401) #5
  store i8 0, ptr %401, align 1, !tbaa !9
  %6525 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %6526 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6525, ptr noundef nonnull align 1 dereferenceable(1) %401)
          to label %6527 unwind label %6529

6527:                                             ; preds = %6524
  call void @llvm.lifetime.end.p0(i64 1, ptr %401) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6528 unwind label %1026

6528:                                             ; preds = %6527
  br label %7491

6529:                                             ; preds = %6524
  %6530 = landingpad { ptr, i32 }
          cleanup
  %6531 = extractvalue { ptr, i32 } %6530, 0
  store ptr %6531, ptr %5, align 8
  %6532 = extractvalue { ptr, i32 } %6530, 1
  store i32 %6532, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %401) #5
  br label %12015

6533:                                             ; preds = %5802
  %6534 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, i32 noundef 2)
          to label %6535 unwind label %1026

6535:                                             ; preds = %6533
  %6536 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 0)
          to label %6537 unwind label %1026

6537:                                             ; preds = %6535
  %6538 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %6536)
          to label %6539 unwind label %1026

6539:                                             ; preds = %6537
  br i1 %6538, label %6540, label %6554

6540:                                             ; preds = %6539
  call void @llvm.lifetime.start.p0(i64 24, ptr %402) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %402, i32 noundef 2)
          to label %6541 unwind label %6545

6541:                                             ; preds = %6540
  %6542 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %6543 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6542, ptr noundef nonnull align 8 dereferenceable(24) %402)
          to label %6544 unwind label %6549

6544:                                             ; preds = %6541
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %402) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %402) #5
  br label %6568

6545:                                             ; preds = %6540
  %6546 = landingpad { ptr, i32 }
          cleanup
  %6547 = extractvalue { ptr, i32 } %6546, 0
  store ptr %6547, ptr %5, align 8
  %6548 = extractvalue { ptr, i32 } %6546, 1
  store i32 %6548, ptr %6, align 4
  br label %6553

6549:                                             ; preds = %6541
  %6550 = landingpad { ptr, i32 }
          cleanup
  %6551 = extractvalue { ptr, i32 } %6550, 0
  store ptr %6551, ptr %5, align 8
  %6552 = extractvalue { ptr, i32 } %6550, 1
  store i32 %6552, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %402) #5
  br label %6553

6553:                                             ; preds = %6549, %6545
  call void @llvm.lifetime.end.p0(i64 24, ptr %402) #5
  br label %12015

6554:                                             ; preds = %6539
  call void @llvm.lifetime.start.p0(i64 24, ptr %403) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %403, i32 noundef 4)
          to label %6555 unwind label %6559

6555:                                             ; preds = %6554
  %6556 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %6557 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6556, ptr noundef nonnull align 8 dereferenceable(24) %403)
          to label %6558 unwind label %6563

6558:                                             ; preds = %6555
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %403) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %403) #5
  br label %6568

6559:                                             ; preds = %6554
  %6560 = landingpad { ptr, i32 }
          cleanup
  %6561 = extractvalue { ptr, i32 } %6560, 0
  store ptr %6561, ptr %5, align 8
  %6562 = extractvalue { ptr, i32 } %6560, 1
  store i32 %6562, ptr %6, align 4
  br label %6567

6563:                                             ; preds = %6555
  %6564 = landingpad { ptr, i32 }
          cleanup
  %6565 = extractvalue { ptr, i32 } %6564, 0
  store ptr %6565, ptr %5, align 8
  %6566 = extractvalue { ptr, i32 } %6564, 1
  store i32 %6566, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %403) #5
  br label %6567

6567:                                             ; preds = %6563, %6559
  call void @llvm.lifetime.end.p0(i64 24, ptr %403) #5
  br label %12015

6568:                                             ; preds = %6558, %6544
  call void @llvm.lifetime.start.p0(i64 24, ptr %404) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %405) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %405, i32 noundef 24)
          to label %6569 unwind label %6600

6569:                                             ; preds = %6568
  %6570 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %405)
          to label %6571 unwind label %6604

6571:                                             ; preds = %6569
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %404, ptr noundef nonnull align 1 dereferenceable(1) %6570)
          to label %6572 unwind label %6604

6572:                                             ; preds = %6571
  %6573 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %6574 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6573, ptr noundef nonnull align 8 dereferenceable(24) %404)
          to label %6575 unwind label %6608

6575:                                             ; preds = %6572
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %404) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %405) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %405) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %404) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %406) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %406, i32 noundef 1)
          to label %6576 unwind label %6614

6576:                                             ; preds = %6575
  %6577 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %6578 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6577, ptr noundef nonnull align 8 dereferenceable(24) %406)
          to label %6579 unwind label %6618

6579:                                             ; preds = %6576
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %406) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %406) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %407) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %407, i32 noundef 3)
          to label %6580 unwind label %6623

6580:                                             ; preds = %6579
  %6581 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %6582 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6581, ptr noundef nonnull align 8 dereferenceable(24) %407)
          to label %6583 unwind label %6627

6583:                                             ; preds = %6580
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %407) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %407) #5
  %6584 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %6585 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6584, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %6586 unwind label %1026

6586:                                             ; preds = %6583
  call void @llvm.lifetime.start.p0(i64 1, ptr %408) #5
  store i8 1, ptr %408, align 1, !tbaa !9
  %6587 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %6588 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6587, ptr noundef nonnull align 1 dereferenceable(1) %408)
          to label %6589 unwind label %6632

6589:                                             ; preds = %6586
  call void @llvm.lifetime.end.p0(i64 1, ptr %408) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6590 unwind label %1026

6590:                                             ; preds = %6589
  br label %6591

6591:                                             ; preds = %6599, %6590
  %6592 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %6593 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %6592)
          to label %6594 unwind label %1026

6594:                                             ; preds = %6591
  %6595 = load i8, ptr %6593, align 1, !tbaa !9, !range !11, !noundef !12
  %6596 = trunc i8 %6595 to i1
  %6597 = xor i1 %6596, true
  br i1 %6597, label %6598, label %6636

6598:                                             ; preds = %6594
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6599 unwind label %1026

6599:                                             ; preds = %6598
  br label %6591, !llvm.loop !90

6600:                                             ; preds = %6568
  %6601 = landingpad { ptr, i32 }
          cleanup
  %6602 = extractvalue { ptr, i32 } %6601, 0
  store ptr %6602, ptr %5, align 8
  %6603 = extractvalue { ptr, i32 } %6601, 1
  store i32 %6603, ptr %6, align 4
  br label %6613

6604:                                             ; preds = %6571, %6569
  %6605 = landingpad { ptr, i32 }
          cleanup
  %6606 = extractvalue { ptr, i32 } %6605, 0
  store ptr %6606, ptr %5, align 8
  %6607 = extractvalue { ptr, i32 } %6605, 1
  store i32 %6607, ptr %6, align 4
  br label %6612

6608:                                             ; preds = %6572
  %6609 = landingpad { ptr, i32 }
          cleanup
  %6610 = extractvalue { ptr, i32 } %6609, 0
  store ptr %6610, ptr %5, align 8
  %6611 = extractvalue { ptr, i32 } %6609, 1
  store i32 %6611, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %404) #5
  br label %6612

6612:                                             ; preds = %6608, %6604
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %405) #5
  br label %6613

6613:                                             ; preds = %6612, %6600
  call void @llvm.lifetime.end.p0(i64 24, ptr %405) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %404) #5
  br label %12015

6614:                                             ; preds = %6575
  %6615 = landingpad { ptr, i32 }
          cleanup
  %6616 = extractvalue { ptr, i32 } %6615, 0
  store ptr %6616, ptr %5, align 8
  %6617 = extractvalue { ptr, i32 } %6615, 1
  store i32 %6617, ptr %6, align 4
  br label %6622

6618:                                             ; preds = %6576
  %6619 = landingpad { ptr, i32 }
          cleanup
  %6620 = extractvalue { ptr, i32 } %6619, 0
  store ptr %6620, ptr %5, align 8
  %6621 = extractvalue { ptr, i32 } %6619, 1
  store i32 %6621, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %406) #5
  br label %6622

6622:                                             ; preds = %6618, %6614
  call void @llvm.lifetime.end.p0(i64 24, ptr %406) #5
  br label %12015

6623:                                             ; preds = %6579
  %6624 = landingpad { ptr, i32 }
          cleanup
  %6625 = extractvalue { ptr, i32 } %6624, 0
  store ptr %6625, ptr %5, align 8
  %6626 = extractvalue { ptr, i32 } %6624, 1
  store i32 %6626, ptr %6, align 4
  br label %6631

6627:                                             ; preds = %6580
  %6628 = landingpad { ptr, i32 }
          cleanup
  %6629 = extractvalue { ptr, i32 } %6628, 0
  store ptr %6629, ptr %5, align 8
  %6630 = extractvalue { ptr, i32 } %6628, 1
  store i32 %6630, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %407) #5
  br label %6631

6631:                                             ; preds = %6627, %6623
  call void @llvm.lifetime.end.p0(i64 24, ptr %407) #5
  br label %12015

6632:                                             ; preds = %6586
  %6633 = landingpad { ptr, i32 }
          cleanup
  %6634 = extractvalue { ptr, i32 } %6633, 0
  store ptr %6634, ptr %5, align 8
  %6635 = extractvalue { ptr, i32 } %6633, 1
  store i32 %6635, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %408) #5
  br label %12015

6636:                                             ; preds = %6594
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6637 unwind label %1026

6637:                                             ; preds = %6636
  call void @llvm.lifetime.start.p0(i64 1, ptr %409) #5
  store i8 0, ptr %409, align 1, !tbaa !9
  %6638 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %6639 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6638, ptr noundef nonnull align 1 dereferenceable(1) %409)
          to label %6640 unwind label %6642

6640:                                             ; preds = %6637
  call void @llvm.lifetime.end.p0(i64 1, ptr %409) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6641 unwind label %1026

6641:                                             ; preds = %6640
  br label %7491

6642:                                             ; preds = %6637
  %6643 = landingpad { ptr, i32 }
          cleanup
  %6644 = extractvalue { ptr, i32 } %6643, 0
  store ptr %6644, ptr %5, align 8
  %6645 = extractvalue { ptr, i32 } %6643, 1
  store i32 %6645, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %409) #5
  br label %12015

6646:                                             ; preds = %5802
  %6647 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, i32 noundef 8)
          to label %6648 unwind label %1026

6648:                                             ; preds = %6646
  call void @llvm.lifetime.start.p0(i64 24, ptr %410) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %410, i32 noundef 20)
          to label %6649 unwind label %6684

6649:                                             ; preds = %6648
  %6650 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %6651 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6650, ptr noundef nonnull align 8 dereferenceable(24) %410)
          to label %6652 unwind label %6688

6652:                                             ; preds = %6649
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %410) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %410) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %411) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %412) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %412, i32 noundef 24)
          to label %6653 unwind label %6693

6653:                                             ; preds = %6652
  %6654 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %412)
          to label %6655 unwind label %6697

6655:                                             ; preds = %6653
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %411, ptr noundef nonnull align 1 dereferenceable(1) %6654)
          to label %6656 unwind label %6697

6656:                                             ; preds = %6655
  %6657 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %6658 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6657, ptr noundef nonnull align 8 dereferenceable(24) %411)
          to label %6659 unwind label %6701

6659:                                             ; preds = %6656
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %411) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %412) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %412) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %411) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %413) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %413, i32 noundef 4)
          to label %6660 unwind label %6707

6660:                                             ; preds = %6659
  %6661 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %6662 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6661, ptr noundef nonnull align 8 dereferenceable(24) %413)
          to label %6663 unwind label %6711

6663:                                             ; preds = %6660
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %413) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %413) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %414) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %414, i32 noundef 3)
          to label %6664 unwind label %6716

6664:                                             ; preds = %6663
  %6665 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %6666 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6665, ptr noundef nonnull align 8 dereferenceable(24) %414)
          to label %6667 unwind label %6720

6667:                                             ; preds = %6664
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %414) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %414) #5
  %6668 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %6669 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6668, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %6670 unwind label %1026

6670:                                             ; preds = %6667
  call void @llvm.lifetime.start.p0(i64 1, ptr %415) #5
  store i8 1, ptr %415, align 1, !tbaa !9
  %6671 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %6672 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6671, ptr noundef nonnull align 1 dereferenceable(1) %415)
          to label %6673 unwind label %6725

6673:                                             ; preds = %6670
  call void @llvm.lifetime.end.p0(i64 1, ptr %415) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6674 unwind label %1026

6674:                                             ; preds = %6673
  br label %6675

6675:                                             ; preds = %6683, %6674
  %6676 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %6677 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %6676)
          to label %6678 unwind label %1026

6678:                                             ; preds = %6675
  %6679 = load i8, ptr %6677, align 1, !tbaa !9, !range !11, !noundef !12
  %6680 = trunc i8 %6679 to i1
  %6681 = xor i1 %6680, true
  br i1 %6681, label %6682, label %6729

6682:                                             ; preds = %6678
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6683 unwind label %1026

6683:                                             ; preds = %6682
  br label %6675, !llvm.loop !91

6684:                                             ; preds = %6648
  %6685 = landingpad { ptr, i32 }
          cleanup
  %6686 = extractvalue { ptr, i32 } %6685, 0
  store ptr %6686, ptr %5, align 8
  %6687 = extractvalue { ptr, i32 } %6685, 1
  store i32 %6687, ptr %6, align 4
  br label %6692

6688:                                             ; preds = %6649
  %6689 = landingpad { ptr, i32 }
          cleanup
  %6690 = extractvalue { ptr, i32 } %6689, 0
  store ptr %6690, ptr %5, align 8
  %6691 = extractvalue { ptr, i32 } %6689, 1
  store i32 %6691, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %410) #5
  br label %6692

6692:                                             ; preds = %6688, %6684
  call void @llvm.lifetime.end.p0(i64 24, ptr %410) #5
  br label %12015

6693:                                             ; preds = %6652
  %6694 = landingpad { ptr, i32 }
          cleanup
  %6695 = extractvalue { ptr, i32 } %6694, 0
  store ptr %6695, ptr %5, align 8
  %6696 = extractvalue { ptr, i32 } %6694, 1
  store i32 %6696, ptr %6, align 4
  br label %6706

6697:                                             ; preds = %6655, %6653
  %6698 = landingpad { ptr, i32 }
          cleanup
  %6699 = extractvalue { ptr, i32 } %6698, 0
  store ptr %6699, ptr %5, align 8
  %6700 = extractvalue { ptr, i32 } %6698, 1
  store i32 %6700, ptr %6, align 4
  br label %6705

6701:                                             ; preds = %6656
  %6702 = landingpad { ptr, i32 }
          cleanup
  %6703 = extractvalue { ptr, i32 } %6702, 0
  store ptr %6703, ptr %5, align 8
  %6704 = extractvalue { ptr, i32 } %6702, 1
  store i32 %6704, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %411) #5
  br label %6705

6705:                                             ; preds = %6701, %6697
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %412) #5
  br label %6706

6706:                                             ; preds = %6705, %6693
  call void @llvm.lifetime.end.p0(i64 24, ptr %412) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %411) #5
  br label %12015

6707:                                             ; preds = %6659
  %6708 = landingpad { ptr, i32 }
          cleanup
  %6709 = extractvalue { ptr, i32 } %6708, 0
  store ptr %6709, ptr %5, align 8
  %6710 = extractvalue { ptr, i32 } %6708, 1
  store i32 %6710, ptr %6, align 4
  br label %6715

6711:                                             ; preds = %6660
  %6712 = landingpad { ptr, i32 }
          cleanup
  %6713 = extractvalue { ptr, i32 } %6712, 0
  store ptr %6713, ptr %5, align 8
  %6714 = extractvalue { ptr, i32 } %6712, 1
  store i32 %6714, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %413) #5
  br label %6715

6715:                                             ; preds = %6711, %6707
  call void @llvm.lifetime.end.p0(i64 24, ptr %413) #5
  br label %12015

6716:                                             ; preds = %6663
  %6717 = landingpad { ptr, i32 }
          cleanup
  %6718 = extractvalue { ptr, i32 } %6717, 0
  store ptr %6718, ptr %5, align 8
  %6719 = extractvalue { ptr, i32 } %6717, 1
  store i32 %6719, ptr %6, align 4
  br label %6724

6720:                                             ; preds = %6664
  %6721 = landingpad { ptr, i32 }
          cleanup
  %6722 = extractvalue { ptr, i32 } %6721, 0
  store ptr %6722, ptr %5, align 8
  %6723 = extractvalue { ptr, i32 } %6721, 1
  store i32 %6723, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %414) #5
  br label %6724

6724:                                             ; preds = %6720, %6716
  call void @llvm.lifetime.end.p0(i64 24, ptr %414) #5
  br label %12015

6725:                                             ; preds = %6670
  %6726 = landingpad { ptr, i32 }
          cleanup
  %6727 = extractvalue { ptr, i32 } %6726, 0
  store ptr %6727, ptr %5, align 8
  %6728 = extractvalue { ptr, i32 } %6726, 1
  store i32 %6728, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %415) #5
  br label %12015

6729:                                             ; preds = %6678
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6730 unwind label %1026

6730:                                             ; preds = %6729
  call void @llvm.lifetime.start.p0(i64 1, ptr %416) #5
  store i8 0, ptr %416, align 1, !tbaa !9
  %6731 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %6732 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6731, ptr noundef nonnull align 1 dereferenceable(1) %416)
          to label %6733 unwind label %6735

6733:                                             ; preds = %6730
  call void @llvm.lifetime.end.p0(i64 1, ptr %416) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6734 unwind label %1026

6734:                                             ; preds = %6733
  br label %7491

6735:                                             ; preds = %6730
  %6736 = landingpad { ptr, i32 }
          cleanup
  %6737 = extractvalue { ptr, i32 } %6736, 0
  store ptr %6737, ptr %5, align 8
  %6738 = extractvalue { ptr, i32 } %6736, 1
  store i32 %6738, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %416) #5
  br label %12015

6739:                                             ; preds = %5802
  %6740 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, i32 noundef 2)
          to label %6741 unwind label %1026

6741:                                             ; preds = %6739
  %6742 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 0)
          to label %6743 unwind label %1026

6743:                                             ; preds = %6741
  %6744 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %6742)
          to label %6745 unwind label %1026

6745:                                             ; preds = %6743
  br i1 %6744, label %6746, label %6749

6746:                                             ; preds = %6745
  %6747 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %10, i32 noundef 0)
          to label %6748 unwind label %1026

6748:                                             ; preds = %6746
  br label %6752

6749:                                             ; preds = %6745
  %6750 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %10, i32 noundef 1)
          to label %6751 unwind label %1026

6751:                                             ; preds = %6749
  br label %6752

6752:                                             ; preds = %6751, %6748
  %6753 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %6754 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6753, ptr noundef nonnull align 8 dereferenceable(24) %10)
          to label %6755 unwind label %1026

6755:                                             ; preds = %6752
  call void @llvm.lifetime.start.p0(i64 24, ptr %417) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %418) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %418, i32 noundef 24)
          to label %6756 unwind label %6787

6756:                                             ; preds = %6755
  %6757 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %418)
          to label %6758 unwind label %6791

6758:                                             ; preds = %6756
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %417, ptr noundef nonnull align 1 dereferenceable(1) %6757)
          to label %6759 unwind label %6791

6759:                                             ; preds = %6758
  %6760 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %6761 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6760, ptr noundef nonnull align 8 dereferenceable(24) %417)
          to label %6762 unwind label %6795

6762:                                             ; preds = %6759
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %417) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %418) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %418) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %417) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %419) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %419, i32 noundef 1)
          to label %6763 unwind label %6801

6763:                                             ; preds = %6762
  %6764 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %6765 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6764, ptr noundef nonnull align 8 dereferenceable(24) %419)
          to label %6766 unwind label %6805

6766:                                             ; preds = %6763
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %419) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %419) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %420) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %420, i32 noundef 3)
          to label %6767 unwind label %6810

6767:                                             ; preds = %6766
  %6768 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %6769 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6768, ptr noundef nonnull align 8 dereferenceable(24) %420)
          to label %6770 unwind label %6814

6770:                                             ; preds = %6767
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %420) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %420) #5
  %6771 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %6772 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6771, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %6773 unwind label %1026

6773:                                             ; preds = %6770
  call void @llvm.lifetime.start.p0(i64 1, ptr %421) #5
  store i8 1, ptr %421, align 1, !tbaa !9
  %6774 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %6775 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6774, ptr noundef nonnull align 1 dereferenceable(1) %421)
          to label %6776 unwind label %6819

6776:                                             ; preds = %6773
  call void @llvm.lifetime.end.p0(i64 1, ptr %421) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6777 unwind label %1026

6777:                                             ; preds = %6776
  br label %6778

6778:                                             ; preds = %6786, %6777
  %6779 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %6780 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %6779)
          to label %6781 unwind label %1026

6781:                                             ; preds = %6778
  %6782 = load i8, ptr %6780, align 1, !tbaa !9, !range !11, !noundef !12
  %6783 = trunc i8 %6782 to i1
  %6784 = xor i1 %6783, true
  br i1 %6784, label %6785, label %6823

6785:                                             ; preds = %6781
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6786 unwind label %1026

6786:                                             ; preds = %6785
  br label %6778, !llvm.loop !92

6787:                                             ; preds = %6755
  %6788 = landingpad { ptr, i32 }
          cleanup
  %6789 = extractvalue { ptr, i32 } %6788, 0
  store ptr %6789, ptr %5, align 8
  %6790 = extractvalue { ptr, i32 } %6788, 1
  store i32 %6790, ptr %6, align 4
  br label %6800

6791:                                             ; preds = %6758, %6756
  %6792 = landingpad { ptr, i32 }
          cleanup
  %6793 = extractvalue { ptr, i32 } %6792, 0
  store ptr %6793, ptr %5, align 8
  %6794 = extractvalue { ptr, i32 } %6792, 1
  store i32 %6794, ptr %6, align 4
  br label %6799

6795:                                             ; preds = %6759
  %6796 = landingpad { ptr, i32 }
          cleanup
  %6797 = extractvalue { ptr, i32 } %6796, 0
  store ptr %6797, ptr %5, align 8
  %6798 = extractvalue { ptr, i32 } %6796, 1
  store i32 %6798, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %417) #5
  br label %6799

6799:                                             ; preds = %6795, %6791
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %418) #5
  br label %6800

6800:                                             ; preds = %6799, %6787
  call void @llvm.lifetime.end.p0(i64 24, ptr %418) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %417) #5
  br label %12015

6801:                                             ; preds = %6762
  %6802 = landingpad { ptr, i32 }
          cleanup
  %6803 = extractvalue { ptr, i32 } %6802, 0
  store ptr %6803, ptr %5, align 8
  %6804 = extractvalue { ptr, i32 } %6802, 1
  store i32 %6804, ptr %6, align 4
  br label %6809

6805:                                             ; preds = %6763
  %6806 = landingpad { ptr, i32 }
          cleanup
  %6807 = extractvalue { ptr, i32 } %6806, 0
  store ptr %6807, ptr %5, align 8
  %6808 = extractvalue { ptr, i32 } %6806, 1
  store i32 %6808, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %419) #5
  br label %6809

6809:                                             ; preds = %6805, %6801
  call void @llvm.lifetime.end.p0(i64 24, ptr %419) #5
  br label %12015

6810:                                             ; preds = %6766
  %6811 = landingpad { ptr, i32 }
          cleanup
  %6812 = extractvalue { ptr, i32 } %6811, 0
  store ptr %6812, ptr %5, align 8
  %6813 = extractvalue { ptr, i32 } %6811, 1
  store i32 %6813, ptr %6, align 4
  br label %6818

6814:                                             ; preds = %6767
  %6815 = landingpad { ptr, i32 }
          cleanup
  %6816 = extractvalue { ptr, i32 } %6815, 0
  store ptr %6816, ptr %5, align 8
  %6817 = extractvalue { ptr, i32 } %6815, 1
  store i32 %6817, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %420) #5
  br label %6818

6818:                                             ; preds = %6814, %6810
  call void @llvm.lifetime.end.p0(i64 24, ptr %420) #5
  br label %12015

6819:                                             ; preds = %6773
  %6820 = landingpad { ptr, i32 }
          cleanup
  %6821 = extractvalue { ptr, i32 } %6820, 0
  store ptr %6821, ptr %5, align 8
  %6822 = extractvalue { ptr, i32 } %6820, 1
  store i32 %6822, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %421) #5
  br label %12015

6823:                                             ; preds = %6781
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6824 unwind label %1026

6824:                                             ; preds = %6823
  call void @llvm.lifetime.start.p0(i64 1, ptr %422) #5
  store i8 0, ptr %422, align 1, !tbaa !9
  %6825 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %6826 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6825, ptr noundef nonnull align 1 dereferenceable(1) %422)
          to label %6827 unwind label %6858

6827:                                             ; preds = %6824
  call void @llvm.lifetime.end.p0(i64 1, ptr %422) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6828 unwind label %1026

6828:                                             ; preds = %6827
  %6829 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 8 dereferenceable(24) %10)
          to label %6830 unwind label %1026

6830:                                             ; preds = %6828
  %6831 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 0)
          to label %6832 unwind label %1026

6832:                                             ; preds = %6830
  %6833 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %6834 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6833, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %6835 unwind label %1026

6835:                                             ; preds = %6832
  %6836 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %6837 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6836, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %6838 unwind label %1026

6838:                                             ; preds = %6835
  call void @llvm.lifetime.start.p0(i64 1, ptr %423) #5
  store i8 0, ptr %423, align 1, !tbaa !9
  %6839 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %6840 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6839, ptr noundef nonnull align 1 dereferenceable(1) %423)
          to label %6841 unwind label %6862

6841:                                             ; preds = %6838
  call void @llvm.lifetime.end.p0(i64 1, ptr %423) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %424) #5
  store i8 1, ptr %424, align 1, !tbaa !9
  %6842 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %6843 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6842, ptr noundef nonnull align 1 dereferenceable(1) %424)
          to label %6844 unwind label %6866

6844:                                             ; preds = %6841
  call void @llvm.lifetime.end.p0(i64 1, ptr %424) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6845 unwind label %1026

6845:                                             ; preds = %6844
  br label %6846

6846:                                             ; preds = %6875, %6845
  br label %6847

6847:                                             ; preds = %6846
  call void @llvm.lifetime.start.p0(i64 1, ptr %425) #5
  store i8 0, ptr %425, align 1, !tbaa !9
  %6848 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %6849 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6848, ptr noundef nonnull align 1 dereferenceable(1) %425)
          to label %6850 unwind label %6870

6850:                                             ; preds = %6847
  call void @llvm.lifetime.end.p0(i64 1, ptr %425) #5
  %6851 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %6852 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %6851)
          to label %6853 unwind label %1026

6853:                                             ; preds = %6850
  %6854 = load i8, ptr %6852, align 1, !tbaa !9, !range !11, !noundef !12
  %6855 = trunc i8 %6854 to i1
  br i1 %6855, label %6856, label %6874

6856:                                             ; preds = %6853
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6857 unwind label %1026

6857:                                             ; preds = %6856
  br label %6876

6858:                                             ; preds = %6824
  %6859 = landingpad { ptr, i32 }
          cleanup
  %6860 = extractvalue { ptr, i32 } %6859, 0
  store ptr %6860, ptr %5, align 8
  %6861 = extractvalue { ptr, i32 } %6859, 1
  store i32 %6861, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %422) #5
  br label %12015

6862:                                             ; preds = %6838
  %6863 = landingpad { ptr, i32 }
          cleanup
  %6864 = extractvalue { ptr, i32 } %6863, 0
  store ptr %6864, ptr %5, align 8
  %6865 = extractvalue { ptr, i32 } %6863, 1
  store i32 %6865, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %423) #5
  br label %12015

6866:                                             ; preds = %6841
  %6867 = landingpad { ptr, i32 }
          cleanup
  %6868 = extractvalue { ptr, i32 } %6867, 0
  store ptr %6868, ptr %5, align 8
  %6869 = extractvalue { ptr, i32 } %6867, 1
  store i32 %6869, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %424) #5
  br label %12015

6870:                                             ; preds = %6847
  %6871 = landingpad { ptr, i32 }
          cleanup
  %6872 = extractvalue { ptr, i32 } %6871, 0
  store ptr %6872, ptr %5, align 8
  %6873 = extractvalue { ptr, i32 } %6871, 1
  store i32 %6873, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %425) #5
  br label %12015

6874:                                             ; preds = %6853
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6875 unwind label %1026

6875:                                             ; preds = %6874
  br label %6846, !llvm.loop !93

6876:                                             ; preds = %6857
  br label %7491

6877:                                             ; preds = %5802
  %6878 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %20, i32 noundef 0)
          to label %6879 unwind label %1026

6879:                                             ; preds = %6877
  store i8 1, ptr %30, align 1, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %426) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %426, i32 noundef 11)
          to label %6880 unwind label %6915

6880:                                             ; preds = %6879
  %6881 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %426)
          to label %6882 unwind label %6919

6882:                                             ; preds = %6880
  %6883 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %6881)
          to label %6884 unwind label %6919

6884:                                             ; preds = %6882
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %426) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %426) #5
  %6885 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %6886 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6885, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %6887 unwind label %1026

6887:                                             ; preds = %6884
  %6888 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %6889 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6888, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %6890 unwind label %1026

6890:                                             ; preds = %6887
  call void @llvm.lifetime.start.p0(i64 1, ptr %427) #5
  store i8 1, ptr %427, align 1, !tbaa !9
  %6891 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %6892 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6891, ptr noundef nonnull align 1 dereferenceable(1) %427)
          to label %6893 unwind label %6924

6893:                                             ; preds = %6890
  call void @llvm.lifetime.end.p0(i64 1, ptr %427) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %428) #5
  store i8 1, ptr %428, align 1, !tbaa !9
  %6894 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %6895 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6894, ptr noundef nonnull align 1 dereferenceable(1) %428)
          to label %6896 unwind label %6928

6896:                                             ; preds = %6893
  call void @llvm.lifetime.end.p0(i64 1, ptr %428) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6897 unwind label %1026

6897:                                             ; preds = %6896
  br label %6898

6898:                                             ; preds = %6937, %6897
  br label %6899

6899:                                             ; preds = %6898
  %6900 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %6901 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %6900)
          to label %6902 unwind label %1026

6902:                                             ; preds = %6899
  %6903 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %6901)
          to label %6904 unwind label %1026

6904:                                             ; preds = %6902
  call void @llvm.lifetime.start.p0(i64 1, ptr %429) #5
  store i8 0, ptr %429, align 1, !tbaa !9
  %6905 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %6906 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6905, ptr noundef nonnull align 1 dereferenceable(1) %429)
          to label %6907 unwind label %6932

6907:                                             ; preds = %6904
  call void @llvm.lifetime.end.p0(i64 1, ptr %429) #5
  %6908 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %6909 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %6908)
          to label %6910 unwind label %1026

6910:                                             ; preds = %6907
  %6911 = load i8, ptr %6909, align 1, !tbaa !9, !range !11, !noundef !12
  %6912 = trunc i8 %6911 to i1
  br i1 %6912, label %6913, label %6936

6913:                                             ; preds = %6910
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6914 unwind label %1026

6914:                                             ; preds = %6913
  br label %6938

6915:                                             ; preds = %6879
  %6916 = landingpad { ptr, i32 }
          cleanup
  %6917 = extractvalue { ptr, i32 } %6916, 0
  store ptr %6917, ptr %5, align 8
  %6918 = extractvalue { ptr, i32 } %6916, 1
  store i32 %6918, ptr %6, align 4
  br label %6923

6919:                                             ; preds = %6882, %6880
  %6920 = landingpad { ptr, i32 }
          cleanup
  %6921 = extractvalue { ptr, i32 } %6920, 0
  store ptr %6921, ptr %5, align 8
  %6922 = extractvalue { ptr, i32 } %6920, 1
  store i32 %6922, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %426) #5
  br label %6923

6923:                                             ; preds = %6919, %6915
  call void @llvm.lifetime.end.p0(i64 24, ptr %426) #5
  br label %12015

6924:                                             ; preds = %6890
  %6925 = landingpad { ptr, i32 }
          cleanup
  %6926 = extractvalue { ptr, i32 } %6925, 0
  store ptr %6926, ptr %5, align 8
  %6927 = extractvalue { ptr, i32 } %6925, 1
  store i32 %6927, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %427) #5
  br label %12015

6928:                                             ; preds = %6893
  %6929 = landingpad { ptr, i32 }
          cleanup
  %6930 = extractvalue { ptr, i32 } %6929, 0
  store ptr %6930, ptr %5, align 8
  %6931 = extractvalue { ptr, i32 } %6929, 1
  store i32 %6931, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %428) #5
  br label %12015

6932:                                             ; preds = %6904
  %6933 = landingpad { ptr, i32 }
          cleanup
  %6934 = extractvalue { ptr, i32 } %6933, 0
  store ptr %6934, ptr %5, align 8
  %6935 = extractvalue { ptr, i32 } %6933, 1
  store i32 %6935, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %429) #5
  br label %12015

6936:                                             ; preds = %6910
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6937 unwind label %1026

6937:                                             ; preds = %6936
  br label %6898, !llvm.loop !94

6938:                                             ; preds = %6914
  %6939 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 13, i32 noundef 0)
          to label %6940 unwind label %1026

6940:                                             ; preds = %6938
  %6941 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %10, ptr noundef nonnull align 8 dereferenceable(28) %6939)
          to label %6942 unwind label %1026

6942:                                             ; preds = %6940
  call void @llvm.lifetime.start.p0(i64 24, ptr %430) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %430, i32 noundef 24)
          to label %6943 unwind label %6983

6943:                                             ; preds = %6942
  %6944 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %430)
          to label %6945 unwind label %6987

6945:                                             ; preds = %6943
  %6946 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %11, ptr noundef nonnull align 1 dereferenceable(1) %6944)
          to label %6947 unwind label %6987

6947:                                             ; preds = %6945
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %430) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %430) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %431) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %431, i32 noundef 13)
          to label %6948 unwind label %6992

6948:                                             ; preds = %6947
  %6949 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %431)
          to label %6950 unwind label %6996

6950:                                             ; preds = %6948
  %6951 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %6949)
          to label %6952 unwind label %6996

6952:                                             ; preds = %6950
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %431) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %431) #5
  %6953 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %6954 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6953, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %6955 unwind label %1026

6955:                                             ; preds = %6952
  %6956 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %6957 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %6956, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %6958 unwind label %1026

6958:                                             ; preds = %6955
  call void @llvm.lifetime.start.p0(i64 1, ptr %432) #5
  store i8 1, ptr %432, align 1, !tbaa !9
  %6959 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %6960 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6959, ptr noundef nonnull align 1 dereferenceable(1) %432)
          to label %6961 unwind label %7001

6961:                                             ; preds = %6958
  call void @llvm.lifetime.end.p0(i64 1, ptr %432) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %433) #5
  store i8 1, ptr %433, align 1, !tbaa !9
  %6962 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %6963 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6962, ptr noundef nonnull align 1 dereferenceable(1) %433)
          to label %6964 unwind label %7005

6964:                                             ; preds = %6961
  call void @llvm.lifetime.end.p0(i64 1, ptr %433) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6965 unwind label %1026

6965:                                             ; preds = %6964
  br label %6966

6966:                                             ; preds = %7014, %6965
  br label %6967

6967:                                             ; preds = %6966
  %6968 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %6969 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %6968)
          to label %6970 unwind label %1026

6970:                                             ; preds = %6967
  %6971 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %6969)
          to label %6972 unwind label %1026

6972:                                             ; preds = %6970
  call void @llvm.lifetime.start.p0(i64 1, ptr %434) #5
  store i8 0, ptr %434, align 1, !tbaa !9
  %6973 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %6974 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %6973, ptr noundef nonnull align 1 dereferenceable(1) %434)
          to label %6975 unwind label %7009

6975:                                             ; preds = %6972
  call void @llvm.lifetime.end.p0(i64 1, ptr %434) #5
  %6976 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %6977 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %6976)
          to label %6978 unwind label %1026

6978:                                             ; preds = %6975
  %6979 = load i8, ptr %6977, align 1, !tbaa !9, !range !11, !noundef !12
  %6980 = trunc i8 %6979 to i1
  br i1 %6980, label %6981, label %7013

6981:                                             ; preds = %6978
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %6982 unwind label %1026

6982:                                             ; preds = %6981
  br label %7015

6983:                                             ; preds = %6942
  %6984 = landingpad { ptr, i32 }
          cleanup
  %6985 = extractvalue { ptr, i32 } %6984, 0
  store ptr %6985, ptr %5, align 8
  %6986 = extractvalue { ptr, i32 } %6984, 1
  store i32 %6986, ptr %6, align 4
  br label %6991

6987:                                             ; preds = %6945, %6943
  %6988 = landingpad { ptr, i32 }
          cleanup
  %6989 = extractvalue { ptr, i32 } %6988, 0
  store ptr %6989, ptr %5, align 8
  %6990 = extractvalue { ptr, i32 } %6988, 1
  store i32 %6990, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %430) #5
  br label %6991

6991:                                             ; preds = %6987, %6983
  call void @llvm.lifetime.end.p0(i64 24, ptr %430) #5
  br label %12015

6992:                                             ; preds = %6947
  %6993 = landingpad { ptr, i32 }
          cleanup
  %6994 = extractvalue { ptr, i32 } %6993, 0
  store ptr %6994, ptr %5, align 8
  %6995 = extractvalue { ptr, i32 } %6993, 1
  store i32 %6995, ptr %6, align 4
  br label %7000

6996:                                             ; preds = %6950, %6948
  %6997 = landingpad { ptr, i32 }
          cleanup
  %6998 = extractvalue { ptr, i32 } %6997, 0
  store ptr %6998, ptr %5, align 8
  %6999 = extractvalue { ptr, i32 } %6997, 1
  store i32 %6999, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %431) #5
  br label %7000

7000:                                             ; preds = %6996, %6992
  call void @llvm.lifetime.end.p0(i64 24, ptr %431) #5
  br label %12015

7001:                                             ; preds = %6958
  %7002 = landingpad { ptr, i32 }
          cleanup
  %7003 = extractvalue { ptr, i32 } %7002, 0
  store ptr %7003, ptr %5, align 8
  %7004 = extractvalue { ptr, i32 } %7002, 1
  store i32 %7004, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %432) #5
  br label %12015

7005:                                             ; preds = %6961
  %7006 = landingpad { ptr, i32 }
          cleanup
  %7007 = extractvalue { ptr, i32 } %7006, 0
  store ptr %7007, ptr %5, align 8
  %7008 = extractvalue { ptr, i32 } %7006, 1
  store i32 %7008, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %433) #5
  br label %12015

7009:                                             ; preds = %6972
  %7010 = landingpad { ptr, i32 }
          cleanup
  %7011 = extractvalue { ptr, i32 } %7010, 0
  store ptr %7011, ptr %5, align 8
  %7012 = extractvalue { ptr, i32 } %7010, 1
  store i32 %7012, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %434) #5
  br label %12015

7013:                                             ; preds = %6978
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7014 unwind label %1026

7014:                                             ; preds = %7013
  br label %6966, !llvm.loop !95

7015:                                             ; preds = %6982
  %7016 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 11, i32 noundef 0)
          to label %7017 unwind label %1026

7017:                                             ; preds = %7015
  %7018 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %26, ptr noundef nonnull align 8 dereferenceable(28) %7016)
          to label %7019 unwind label %1026

7019:                                             ; preds = %7017
  %7020 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 11, i32 noundef 0)
          to label %7021 unwind label %1026

7021:                                             ; preds = %7019
  %7022 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %18, ptr noundef nonnull align 8 dereferenceable(28) %7020)
          to label %7023 unwind label %1026

7023:                                             ; preds = %7021
  %7024 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %7, i32 noundef -48)
          to label %7025 unwind label %1026

7025:                                             ; preds = %7023
  br label %7026

7026:                                             ; preds = %7025
  br label %7027

7027:                                             ; preds = %7288, %7026
  br label %7028

7028:                                             ; preds = %7027
  %7029 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7030 unwind label %1026

7030:                                             ; preds = %7028
  %7031 = icmp sle i64 %7029, 1
  br i1 %7031, label %7032, label %7036

7032:                                             ; preds = %7030
  %7033 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %20, i32 noundef 0)
          to label %7034 unwind label %1026

7034:                                             ; preds = %7032
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7035 unwind label %1026

7035:                                             ; preds = %7034
  br label %7298

7036:                                             ; preds = %7030
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7037 unwind label %1026

7037:                                             ; preds = %7036
  br label %7038

7038:                                             ; preds = %7037
  %7039 = invoke noundef zeroext i1 @_ZN5sc_dtgtERKNS_11sc_int_baseES2_(ptr noundef nonnull align 8 dereferenceable(24) %26, ptr noundef nonnull align 8 dereferenceable(24) %7)
          to label %7040 unwind label %1026

7040:                                             ; preds = %7038
  br i1 %7039, label %7041, label %7053

7041:                                             ; preds = %7040
  %7042 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %7, i32 noundef 7, i32 noundef 1)
          to label %7043 unwind label %1026

7043:                                             ; preds = %7041
  %7044 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %20, ptr noundef nonnull align 8 dereferenceable(28) %7042)
          to label %7045 unwind label %1026

7045:                                             ; preds = %7043
  store i8 1, ptr %31, align 1, !tbaa !9
  %7046 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7047 unwind label %1026

7047:                                             ; preds = %7045
  %7048 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %7)
          to label %7049 unwind label %1026

7049:                                             ; preds = %7047
  %7050 = sub nsw i64 %7046, %7048
  %7051 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %26, i64 noundef %7050)
          to label %7052 unwind label %1026

7052:                                             ; preds = %7049
  br label %7063

7053:                                             ; preds = %7040
  %7054 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %26, i32 noundef 7, i32 noundef 1)
          to label %7055 unwind label %1026

7055:                                             ; preds = %7053
  %7056 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %20, ptr noundef nonnull align 8 dereferenceable(28) %7054)
          to label %7057 unwind label %1026

7057:                                             ; preds = %7055
  store i8 0, ptr %31, align 1, !tbaa !9
  %7058 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7059 unwind label %1026

7059:                                             ; preds = %7057
  %7060 = and i64 %7058, 1
  %7061 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %26, i64 noundef %7060)
          to label %7062 unwind label %1026

7062:                                             ; preds = %7059
  br label %7063

7063:                                             ; preds = %7062, %7052
  %7064 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %7065 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7064, ptr noundef nonnull align 8 dereferenceable(24) %10)
          to label %7066 unwind label %1026

7066:                                             ; preds = %7063
  %7067 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %7068 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7067, ptr noundef nonnull align 8 dereferenceable(24) %11)
          to label %7069 unwind label %1026

7069:                                             ; preds = %7066
  %7070 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %7071 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7070, ptr noundef nonnull align 8 dereferenceable(24) %20)
          to label %7072 unwind label %1026

7072:                                             ; preds = %7069
  call void @llvm.lifetime.start.p0(i64 24, ptr %435) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %435, i32 noundef 3)
          to label %7073 unwind label %7093

7073:                                             ; preds = %7072
  %7074 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %7075 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7074, ptr noundef nonnull align 8 dereferenceable(24) %435)
          to label %7076 unwind label %7097

7076:                                             ; preds = %7073
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %435) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %435) #5
  %7077 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %7078 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7077, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %7079 unwind label %1026

7079:                                             ; preds = %7076
  call void @llvm.lifetime.start.p0(i64 1, ptr %436) #5
  store i8 1, ptr %436, align 1, !tbaa !9
  %7080 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %7081 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7080, ptr noundef nonnull align 1 dereferenceable(1) %436)
          to label %7082 unwind label %7102

7082:                                             ; preds = %7079
  call void @llvm.lifetime.end.p0(i64 1, ptr %436) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7083 unwind label %1026

7083:                                             ; preds = %7082
  br label %7084

7084:                                             ; preds = %7092, %7083
  %7085 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %7086 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %7085)
          to label %7087 unwind label %1026

7087:                                             ; preds = %7084
  %7088 = load i8, ptr %7086, align 1, !tbaa !9, !range !11, !noundef !12
  %7089 = trunc i8 %7088 to i1
  %7090 = xor i1 %7089, true
  br i1 %7090, label %7091, label %7106

7091:                                             ; preds = %7087
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7092 unwind label %1026

7092:                                             ; preds = %7091
  br label %7084, !llvm.loop !96

7093:                                             ; preds = %7072
  %7094 = landingpad { ptr, i32 }
          cleanup
  %7095 = extractvalue { ptr, i32 } %7094, 0
  store ptr %7095, ptr %5, align 8
  %7096 = extractvalue { ptr, i32 } %7094, 1
  store i32 %7096, ptr %6, align 4
  br label %7101

7097:                                             ; preds = %7073
  %7098 = landingpad { ptr, i32 }
          cleanup
  %7099 = extractvalue { ptr, i32 } %7098, 0
  store ptr %7099, ptr %5, align 8
  %7100 = extractvalue { ptr, i32 } %7098, 1
  store i32 %7100, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %435) #5
  br label %7101

7101:                                             ; preds = %7097, %7093
  call void @llvm.lifetime.end.p0(i64 24, ptr %435) #5
  br label %12015

7102:                                             ; preds = %7079
  %7103 = landingpad { ptr, i32 }
          cleanup
  %7104 = extractvalue { ptr, i32 } %7103, 0
  store ptr %7104, ptr %5, align 8
  %7105 = extractvalue { ptr, i32 } %7103, 1
  store i32 %7105, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %436) #5
  br label %12015

7106:                                             ; preds = %7087
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7107 unwind label %1026

7107:                                             ; preds = %7106
  call void @llvm.lifetime.start.p0(i64 1, ptr %437) #5
  store i8 0, ptr %437, align 1, !tbaa !9
  %7108 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %7109 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7108, ptr noundef nonnull align 1 dereferenceable(1) %437)
          to label %7110 unwind label %7116

7110:                                             ; preds = %7107
  call void @llvm.lifetime.end.p0(i64 1, ptr %437) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7111 unwind label %1026

7111:                                             ; preds = %7110
  %7112 = load i8, ptr %31, align 1, !tbaa !9, !range !11, !noundef !12
  %7113 = trunc i8 %7112 to i1
  br i1 %7113, label %7120, label %7114

7114:                                             ; preds = %7111
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7115 unwind label %1026

7115:                                             ; preds = %7114
  br label %7298

7116:                                             ; preds = %7107
  %7117 = landingpad { ptr, i32 }
          cleanup
  %7118 = extractvalue { ptr, i32 } %7117, 0
  store ptr %7118, ptr %5, align 8
  %7119 = extractvalue { ptr, i32 } %7117, 1
  store i32 %7119, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %437) #5
  br label %12015

7120:                                             ; preds = %7111
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7121 unwind label %1026

7121:                                             ; preds = %7120
  br label %7122

7122:                                             ; preds = %7121
  call void @llvm.lifetime.start.p0(i64 24, ptr %438) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %438, i32 noundef -8192)
          to label %7123 unwind label %7154

7123:                                             ; preds = %7122
  %7124 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %7125 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7124, ptr noundef nonnull align 8 dereferenceable(24) %438)
          to label %7126 unwind label %7158

7126:                                             ; preds = %7123
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %438) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %438) #5
  %7127 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %7128 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7127, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %7129 unwind label %1026

7129:                                             ; preds = %7126
  call void @llvm.lifetime.start.p0(i64 1, ptr %439) #5
  store i8 1, ptr %439, align 1, !tbaa !9
  %7130 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %7131 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7130, ptr noundef nonnull align 1 dereferenceable(1) %439)
          to label %7132 unwind label %7163

7132:                                             ; preds = %7129
  call void @llvm.lifetime.end.p0(i64 1, ptr %439) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %440) #5
  store i8 1, ptr %440, align 1, !tbaa !9
  %7133 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %7134 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7133, ptr noundef nonnull align 1 dereferenceable(1) %440)
          to label %7135 unwind label %7167

7135:                                             ; preds = %7132
  call void @llvm.lifetime.end.p0(i64 1, ptr %440) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7136 unwind label %1026

7136:                                             ; preds = %7135
  br label %7137

7137:                                             ; preds = %7176, %7136
  br label %7138

7138:                                             ; preds = %7137
  %7139 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %7140 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %7139)
          to label %7141 unwind label %1026

7141:                                             ; preds = %7138
  %7142 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %7140)
          to label %7143 unwind label %1026

7143:                                             ; preds = %7141
  call void @llvm.lifetime.start.p0(i64 1, ptr %441) #5
  store i8 0, ptr %441, align 1, !tbaa !9
  %7144 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %7145 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7144, ptr noundef nonnull align 1 dereferenceable(1) %441)
          to label %7146 unwind label %7171

7146:                                             ; preds = %7143
  call void @llvm.lifetime.end.p0(i64 1, ptr %441) #5
  %7147 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %7148 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %7147)
          to label %7149 unwind label %1026

7149:                                             ; preds = %7146
  %7150 = load i8, ptr %7148, align 1, !tbaa !9, !range !11, !noundef !12
  %7151 = trunc i8 %7150 to i1
  br i1 %7151, label %7152, label %7175

7152:                                             ; preds = %7149
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7153 unwind label %1026

7153:                                             ; preds = %7152
  br label %7177

7154:                                             ; preds = %7122
  %7155 = landingpad { ptr, i32 }
          cleanup
  %7156 = extractvalue { ptr, i32 } %7155, 0
  store ptr %7156, ptr %5, align 8
  %7157 = extractvalue { ptr, i32 } %7155, 1
  store i32 %7157, ptr %6, align 4
  br label %7162

7158:                                             ; preds = %7123
  %7159 = landingpad { ptr, i32 }
          cleanup
  %7160 = extractvalue { ptr, i32 } %7159, 0
  store ptr %7160, ptr %5, align 8
  %7161 = extractvalue { ptr, i32 } %7159, 1
  store i32 %7161, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %438) #5
  br label %7162

7162:                                             ; preds = %7158, %7154
  call void @llvm.lifetime.end.p0(i64 24, ptr %438) #5
  br label %12015

7163:                                             ; preds = %7129
  %7164 = landingpad { ptr, i32 }
          cleanup
  %7165 = extractvalue { ptr, i32 } %7164, 0
  store ptr %7165, ptr %5, align 8
  %7166 = extractvalue { ptr, i32 } %7164, 1
  store i32 %7166, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %439) #5
  br label %12015

7167:                                             ; preds = %7132
  %7168 = landingpad { ptr, i32 }
          cleanup
  %7169 = extractvalue { ptr, i32 } %7168, 0
  store ptr %7169, ptr %5, align 8
  %7170 = extractvalue { ptr, i32 } %7168, 1
  store i32 %7170, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %440) #5
  br label %12015

7171:                                             ; preds = %7143
  %7172 = landingpad { ptr, i32 }
          cleanup
  %7173 = extractvalue { ptr, i32 } %7172, 0
  store ptr %7173, ptr %5, align 8
  %7174 = extractvalue { ptr, i32 } %7172, 1
  store i32 %7174, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %441) #5
  br label %12015

7175:                                             ; preds = %7149
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7176 unwind label %1026

7176:                                             ; preds = %7175
  br label %7137, !llvm.loop !97

7177:                                             ; preds = %7153
  %7178 = load i8, ptr %30, align 1, !tbaa !9, !range !11, !noundef !12
  %7179 = trunc i8 %7178 to i1
  br i1 %7179, label %7180, label %7190

7180:                                             ; preds = %7177
  %7181 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 13, i32 noundef 7)
          to label %7182 unwind label %1026

7182:                                             ; preds = %7180
  %7183 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %19, ptr noundef nonnull align 8 dereferenceable(28) %7181)
          to label %7184 unwind label %1026

7184:                                             ; preds = %7182
  store i8 1, ptr %14, align 1, !tbaa !9
  %7185 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %7186 unwind label %1026

7186:                                             ; preds = %7184
  %7187 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %7188 unwind label %1026

7188:                                             ; preds = %7186
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7189 unwind label %1026

7189:                                             ; preds = %7188
  br label %7268

7190:                                             ; preds = %7177
  %7191 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %19, ptr noundef nonnull align 8 dereferenceable(24) %19)
          to label %7192 unwind label %1026

7192:                                             ; preds = %7190
  %7193 = load i8, ptr %14, align 1, !tbaa !9, !range !11, !noundef !12
  %7194 = trunc i8 %7193 to i1
  %7195 = zext i1 %7194 to i8
  store i8 %7195, ptr %14, align 1, !tbaa !9
  %7196 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %12, i32 noundef 13, i32 noundef 7)
          to label %7197 unwind label %1026

7197:                                             ; preds = %7192
  call void @llvm.lifetime.start.p0(i64 24, ptr %442) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %442, i32 noundef 2)
          to label %7198 unwind label %7235

7198:                                             ; preds = %7197
  %7199 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %7196, ptr noundef nonnull align 8 dereferenceable(8) %442)
          to label %7200 unwind label %7239

7200:                                             ; preds = %7198
  %7201 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %7199)
          to label %7202 unwind label %7239

7202:                                             ; preds = %7200
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %442) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %442) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %443) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %443, i32 noundef -4)
          to label %7203 unwind label %7244

7203:                                             ; preds = %7202
  %7204 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 12, i32 noundef 0)
          to label %7205 unwind label %7248

7205:                                             ; preds = %7203
  %7206 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %443, ptr noundef nonnull align 8 dereferenceable(8) %7204)
          to label %7207 unwind label %7248

7207:                                             ; preds = %7205
  %7208 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 1 dereferenceable(1) %7206)
          to label %7209 unwind label %7248

7209:                                             ; preds = %7207
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %443) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %443) #5
  %7210 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %7211 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7210, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %7212 unwind label %1026

7212:                                             ; preds = %7209
  %7213 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %7214 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7213, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %7215 unwind label %1026

7215:                                             ; preds = %7212
  call void @llvm.lifetime.start.p0(i64 1, ptr %444) #5
  store i8 0, ptr %444, align 1, !tbaa !9
  %7216 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %7217 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7216, ptr noundef nonnull align 1 dereferenceable(1) %444)
          to label %7218 unwind label %7253

7218:                                             ; preds = %7215
  call void @llvm.lifetime.end.p0(i64 1, ptr %444) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %445) #5
  store i8 1, ptr %445, align 1, !tbaa !9
  %7219 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %7220 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7219, ptr noundef nonnull align 1 dereferenceable(1) %445)
          to label %7221 unwind label %7257

7221:                                             ; preds = %7218
  call void @llvm.lifetime.end.p0(i64 1, ptr %445) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7222 unwind label %1026

7222:                                             ; preds = %7221
  br label %7223

7223:                                             ; preds = %7266, %7222
  br label %7224

7224:                                             ; preds = %7223
  call void @llvm.lifetime.start.p0(i64 1, ptr %446) #5
  store i8 0, ptr %446, align 1, !tbaa !9
  %7225 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %7226 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7225, ptr noundef nonnull align 1 dereferenceable(1) %446)
          to label %7227 unwind label %7261

7227:                                             ; preds = %7224
  call void @llvm.lifetime.end.p0(i64 1, ptr %446) #5
  %7228 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %7229 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %7228)
          to label %7230 unwind label %1026

7230:                                             ; preds = %7227
  %7231 = load i8, ptr %7229, align 1, !tbaa !9, !range !11, !noundef !12
  %7232 = trunc i8 %7231 to i1
  br i1 %7232, label %7233, label %7265

7233:                                             ; preds = %7230
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7234 unwind label %1026

7234:                                             ; preds = %7233
  br label %7267

7235:                                             ; preds = %7197
  %7236 = landingpad { ptr, i32 }
          cleanup
  %7237 = extractvalue { ptr, i32 } %7236, 0
  store ptr %7237, ptr %5, align 8
  %7238 = extractvalue { ptr, i32 } %7236, 1
  store i32 %7238, ptr %6, align 4
  br label %7243

7239:                                             ; preds = %7200, %7198
  %7240 = landingpad { ptr, i32 }
          cleanup
  %7241 = extractvalue { ptr, i32 } %7240, 0
  store ptr %7241, ptr %5, align 8
  %7242 = extractvalue { ptr, i32 } %7240, 1
  store i32 %7242, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %442) #5
  br label %7243

7243:                                             ; preds = %7239, %7235
  call void @llvm.lifetime.end.p0(i64 24, ptr %442) #5
  br label %12015

7244:                                             ; preds = %7202
  %7245 = landingpad { ptr, i32 }
          cleanup
  %7246 = extractvalue { ptr, i32 } %7245, 0
  store ptr %7246, ptr %5, align 8
  %7247 = extractvalue { ptr, i32 } %7245, 1
  store i32 %7247, ptr %6, align 4
  br label %7252

7248:                                             ; preds = %7207, %7205, %7203
  %7249 = landingpad { ptr, i32 }
          cleanup
  %7250 = extractvalue { ptr, i32 } %7249, 0
  store ptr %7250, ptr %5, align 8
  %7251 = extractvalue { ptr, i32 } %7249, 1
  store i32 %7251, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %443) #5
  br label %7252

7252:                                             ; preds = %7248, %7244
  call void @llvm.lifetime.end.p0(i64 24, ptr %443) #5
  br label %12015

7253:                                             ; preds = %7215
  %7254 = landingpad { ptr, i32 }
          cleanup
  %7255 = extractvalue { ptr, i32 } %7254, 0
  store ptr %7255, ptr %5, align 8
  %7256 = extractvalue { ptr, i32 } %7254, 1
  store i32 %7256, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %444) #5
  br label %12015

7257:                                             ; preds = %7218
  %7258 = landingpad { ptr, i32 }
          cleanup
  %7259 = extractvalue { ptr, i32 } %7258, 0
  store ptr %7259, ptr %5, align 8
  %7260 = extractvalue { ptr, i32 } %7258, 1
  store i32 %7260, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %445) #5
  br label %12015

7261:                                             ; preds = %7224
  %7262 = landingpad { ptr, i32 }
          cleanup
  %7263 = extractvalue { ptr, i32 } %7262, 0
  store ptr %7263, ptr %5, align 8
  %7264 = extractvalue { ptr, i32 } %7262, 1
  store i32 %7264, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %446) #5
  br label %12015

7265:                                             ; preds = %7230
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7266 unwind label %1026

7266:                                             ; preds = %7265
  br label %7223, !llvm.loop !98

7267:                                             ; preds = %7234
  br label %7268

7268:                                             ; preds = %7267, %7189
  %7269 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %7, i32 noundef -16)
          to label %7270 unwind label %1026

7270:                                             ; preds = %7268
  %7271 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %10)
          to label %7272 unwind label %1026

7272:                                             ; preds = %7270
  %7273 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %20)
          to label %7274 unwind label %1026

7274:                                             ; preds = %7272
  %7275 = add nsw i64 %7271, %7273
  %7276 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %10, i64 noundef %7275)
          to label %7277 unwind label %1026

7277:                                             ; preds = %7274
  %7278 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 13, i32 noundef 7)
          to label %7279 unwind label %1026

7279:                                             ; preds = %7277
  call void @llvm.lifetime.start.p0(i64 24, ptr %447) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %447, i32 noundef 8)
          to label %7280 unwind label %7289

7280:                                             ; preds = %7279
  %7281 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %7278, ptr noundef nonnull align 8 dereferenceable(8) %447)
          to label %7282 unwind label %7293

7282:                                             ; preds = %7280
  %7283 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %11, ptr noundef nonnull align 1 dereferenceable(1) %7281)
          to label %7284 unwind label %7293

7284:                                             ; preds = %7282
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %447) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %447) #5
  %7285 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 13, i32 noundef 0)
          to label %7286 unwind label %1026

7286:                                             ; preds = %7284
  %7287 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %12, ptr noundef nonnull align 8 dereferenceable(28) %7285)
          to label %7288 unwind label %1026

7288:                                             ; preds = %7286
  store i8 0, ptr %30, align 1, !tbaa !9
  br label %7027, !llvm.loop !99

7289:                                             ; preds = %7279
  %7290 = landingpad { ptr, i32 }
          cleanup
  %7291 = extractvalue { ptr, i32 } %7290, 0
  store ptr %7291, ptr %5, align 8
  %7292 = extractvalue { ptr, i32 } %7290, 1
  store i32 %7292, ptr %6, align 4
  br label %7297

7293:                                             ; preds = %7282, %7280
  %7294 = landingpad { ptr, i32 }
          cleanup
  %7295 = extractvalue { ptr, i32 } %7294, 0
  store ptr %7295, ptr %5, align 8
  %7296 = extractvalue { ptr, i32 } %7294, 1
  store i32 %7296, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %447) #5
  br label %7297

7297:                                             ; preds = %7293, %7289
  call void @llvm.lifetime.end.p0(i64 24, ptr %447) #5
  br label %12015

7298:                                             ; preds = %7115, %7035
  %7299 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %26, i32 noundef 0)
          to label %7300 unwind label %1026

7300:                                             ; preds = %7298
  %7301 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %7299)
          to label %7302 unwind label %1026

7302:                                             ; preds = %7300
  br i1 %7301, label %7303, label %7305

7303:                                             ; preds = %7302
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7304 unwind label %1026

7304:                                             ; preds = %7303
  br label %7422

7305:                                             ; preds = %7302
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7306 unwind label %1026

7306:                                             ; preds = %7305
  %7307 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %10)
          to label %7308 unwind label %1026

7308:                                             ; preds = %7306
  %7309 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %20)
          to label %7310 unwind label %1026

7310:                                             ; preds = %7308
  %7311 = add nsw i64 %7307, %7309
  %7312 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %8, i64 noundef %7311)
          to label %7313 unwind label %1026

7313:                                             ; preds = %7310
  %7314 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %7315 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7314, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %7316 unwind label %1026

7316:                                             ; preds = %7313
  %7317 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %7318 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7317, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %7319 unwind label %1026

7319:                                             ; preds = %7316
  call void @llvm.lifetime.start.p0(i64 1, ptr %448) #5
  store i8 1, ptr %448, align 1, !tbaa !9
  %7320 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %7321 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7320, ptr noundef nonnull align 1 dereferenceable(1) %448)
          to label %7322 unwind label %7344

7322:                                             ; preds = %7319
  call void @llvm.lifetime.end.p0(i64 1, ptr %448) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %449) #5
  store i8 1, ptr %449, align 1, !tbaa !9
  %7323 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %7324 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7323, ptr noundef nonnull align 1 dereferenceable(1) %449)
          to label %7325 unwind label %7348

7325:                                             ; preds = %7322
  call void @llvm.lifetime.end.p0(i64 1, ptr %449) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7326 unwind label %1026

7326:                                             ; preds = %7325
  br label %7327

7327:                                             ; preds = %7357, %7326
  br label %7328

7328:                                             ; preds = %7327
  %7329 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %7330 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %7329)
          to label %7331 unwind label %1026

7331:                                             ; preds = %7328
  %7332 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %7330)
          to label %7333 unwind label %1026

7333:                                             ; preds = %7331
  call void @llvm.lifetime.start.p0(i64 1, ptr %450) #5
  store i8 0, ptr %450, align 1, !tbaa !9
  %7334 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %7335 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7334, ptr noundef nonnull align 1 dereferenceable(1) %450)
          to label %7336 unwind label %7352

7336:                                             ; preds = %7333
  call void @llvm.lifetime.end.p0(i64 1, ptr %450) #5
  %7337 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %7338 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %7337)
          to label %7339 unwind label %1026

7339:                                             ; preds = %7336
  %7340 = load i8, ptr %7338, align 1, !tbaa !9, !range !11, !noundef !12
  %7341 = trunc i8 %7340 to i1
  br i1 %7341, label %7342, label %7356

7342:                                             ; preds = %7339
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7343 unwind label %1026

7343:                                             ; preds = %7342
  br label %7358

7344:                                             ; preds = %7319
  %7345 = landingpad { ptr, i32 }
          cleanup
  %7346 = extractvalue { ptr, i32 } %7345, 0
  store ptr %7346, ptr %5, align 8
  %7347 = extractvalue { ptr, i32 } %7345, 1
  store i32 %7347, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %448) #5
  br label %12015

7348:                                             ; preds = %7322
  %7349 = landingpad { ptr, i32 }
          cleanup
  %7350 = extractvalue { ptr, i32 } %7349, 0
  store ptr %7350, ptr %5, align 8
  %7351 = extractvalue { ptr, i32 } %7349, 1
  store i32 %7351, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %449) #5
  br label %12015

7352:                                             ; preds = %7333
  %7353 = landingpad { ptr, i32 }
          cleanup
  %7354 = extractvalue { ptr, i32 } %7353, 0
  store ptr %7354, ptr %5, align 8
  %7355 = extractvalue { ptr, i32 } %7353, 1
  store i32 %7355, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %450) #5
  br label %12015

7356:                                             ; preds = %7339
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7357 unwind label %1026

7357:                                             ; preds = %7356
  br label %7327, !llvm.loop !100

7358:                                             ; preds = %7343
  %7359 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %11)
          to label %7360 unwind label %1026

7360:                                             ; preds = %7358
  %7361 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %20)
          to label %7362 unwind label %1026

7362:                                             ; preds = %7360
  %7363 = add nsw i64 %7359, %7361
  %7364 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %8, i64 noundef %7363)
          to label %7365 unwind label %1026

7365:                                             ; preds = %7362
  call void @llvm.lifetime.start.p0(i64 24, ptr %451) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %451, i32 noundef 0)
          to label %7366 unwind label %7398

7366:                                             ; preds = %7365
  %7367 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 7, i32 noundef 0)
          to label %7368 unwind label %7402

7368:                                             ; preds = %7366
  %7369 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %451, ptr noundef nonnull align 8 dereferenceable(8) %7367)
          to label %7370 unwind label %7402

7370:                                             ; preds = %7368
  %7371 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 1 dereferenceable(1) %7369)
          to label %7372 unwind label %7402

7372:                                             ; preds = %7370
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %451) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %451) #5
  %7373 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %7374 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7373, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %7375 unwind label %1026

7375:                                             ; preds = %7372
  %7376 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %7377 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7376, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %7378 unwind label %1026

7378:                                             ; preds = %7375
  call void @llvm.lifetime.start.p0(i64 1, ptr %452) #5
  store i8 0, ptr %452, align 1, !tbaa !9
  %7379 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %7380 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7379, ptr noundef nonnull align 1 dereferenceable(1) %452)
          to label %7381 unwind label %7407

7381:                                             ; preds = %7378
  call void @llvm.lifetime.end.p0(i64 1, ptr %452) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %453) #5
  store i8 1, ptr %453, align 1, !tbaa !9
  %7382 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %7383 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7382, ptr noundef nonnull align 1 dereferenceable(1) %453)
          to label %7384 unwind label %7411

7384:                                             ; preds = %7381
  call void @llvm.lifetime.end.p0(i64 1, ptr %453) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7385 unwind label %1026

7385:                                             ; preds = %7384
  br label %7386

7386:                                             ; preds = %7420, %7385
  br label %7387

7387:                                             ; preds = %7386
  call void @llvm.lifetime.start.p0(i64 1, ptr %454) #5
  store i8 0, ptr %454, align 1, !tbaa !9
  %7388 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %7389 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7388, ptr noundef nonnull align 1 dereferenceable(1) %454)
          to label %7390 unwind label %7415

7390:                                             ; preds = %7387
  call void @llvm.lifetime.end.p0(i64 1, ptr %454) #5
  %7391 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %7392 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %7391)
          to label %7393 unwind label %1026

7393:                                             ; preds = %7390
  %7394 = load i8, ptr %7392, align 1, !tbaa !9, !range !11, !noundef !12
  %7395 = trunc i8 %7394 to i1
  br i1 %7395, label %7396, label %7419

7396:                                             ; preds = %7393
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7397 unwind label %1026

7397:                                             ; preds = %7396
  br label %7421

7398:                                             ; preds = %7365
  %7399 = landingpad { ptr, i32 }
          cleanup
  %7400 = extractvalue { ptr, i32 } %7399, 0
  store ptr %7400, ptr %5, align 8
  %7401 = extractvalue { ptr, i32 } %7399, 1
  store i32 %7401, ptr %6, align 4
  br label %7406

7402:                                             ; preds = %7370, %7368, %7366
  %7403 = landingpad { ptr, i32 }
          cleanup
  %7404 = extractvalue { ptr, i32 } %7403, 0
  store ptr %7404, ptr %5, align 8
  %7405 = extractvalue { ptr, i32 } %7403, 1
  store i32 %7405, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %451) #5
  br label %7406

7406:                                             ; preds = %7402, %7398
  call void @llvm.lifetime.end.p0(i64 24, ptr %451) #5
  br label %12015

7407:                                             ; preds = %7378
  %7408 = landingpad { ptr, i32 }
          cleanup
  %7409 = extractvalue { ptr, i32 } %7408, 0
  store ptr %7409, ptr %5, align 8
  %7410 = extractvalue { ptr, i32 } %7408, 1
  store i32 %7410, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %452) #5
  br label %12015

7411:                                             ; preds = %7381
  %7412 = landingpad { ptr, i32 }
          cleanup
  %7413 = extractvalue { ptr, i32 } %7412, 0
  store ptr %7413, ptr %5, align 8
  %7414 = extractvalue { ptr, i32 } %7412, 1
  store i32 %7414, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %453) #5
  br label %12015

7415:                                             ; preds = %7387
  %7416 = landingpad { ptr, i32 }
          cleanup
  %7417 = extractvalue { ptr, i32 } %7416, 0
  store ptr %7417, ptr %5, align 8
  %7418 = extractvalue { ptr, i32 } %7416, 1
  store i32 %7418, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %454) #5
  br label %12015

7419:                                             ; preds = %7393
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7420 unwind label %1026

7420:                                             ; preds = %7419
  br label %7386, !llvm.loop !101

7421:                                             ; preds = %7397
  br label %7422

7422:                                             ; preds = %7421, %7304
  %7423 = load i8, ptr %30, align 1, !tbaa !9, !range !11, !noundef !12
  %7424 = trunc i8 %7423 to i1
  br i1 %7424, label %7484, label %7425

7425:                                             ; preds = %7422
  %7426 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %12, i32 noundef 13, i32 noundef 7)
          to label %7427 unwind label %1026

7427:                                             ; preds = %7425
  call void @llvm.lifetime.start.p0(i64 24, ptr %455) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %455, i32 noundef 2)
          to label %7428 unwind label %7460

7428:                                             ; preds = %7427
  %7429 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %7426, ptr noundef nonnull align 8 dereferenceable(8) %455)
          to label %7430 unwind label %7464

7430:                                             ; preds = %7428
  %7431 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %7429)
          to label %7432 unwind label %7464

7432:                                             ; preds = %7430
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %455) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %455) #5
  %7433 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 0)
          to label %7434 unwind label %1026

7434:                                             ; preds = %7432
  %7435 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %7436 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7435, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %7437 unwind label %1026

7437:                                             ; preds = %7434
  %7438 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %7439 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7438, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %7440 unwind label %1026

7440:                                             ; preds = %7437
  call void @llvm.lifetime.start.p0(i64 1, ptr %456) #5
  store i8 0, ptr %456, align 1, !tbaa !9
  %7441 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %7442 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7441, ptr noundef nonnull align 1 dereferenceable(1) %456)
          to label %7443 unwind label %7469

7443:                                             ; preds = %7440
  call void @llvm.lifetime.end.p0(i64 1, ptr %456) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %457) #5
  store i8 1, ptr %457, align 1, !tbaa !9
  %7444 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %7445 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7444, ptr noundef nonnull align 1 dereferenceable(1) %457)
          to label %7446 unwind label %7473

7446:                                             ; preds = %7443
  call void @llvm.lifetime.end.p0(i64 1, ptr %457) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7447 unwind label %1026

7447:                                             ; preds = %7446
  br label %7448

7448:                                             ; preds = %7482, %7447
  br label %7449

7449:                                             ; preds = %7448
  call void @llvm.lifetime.start.p0(i64 1, ptr %458) #5
  store i8 0, ptr %458, align 1, !tbaa !9
  %7450 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %7451 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7450, ptr noundef nonnull align 1 dereferenceable(1) %458)
          to label %7452 unwind label %7477

7452:                                             ; preds = %7449
  call void @llvm.lifetime.end.p0(i64 1, ptr %458) #5
  %7453 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %7454 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %7453)
          to label %7455 unwind label %1026

7455:                                             ; preds = %7452
  %7456 = load i8, ptr %7454, align 1, !tbaa !9, !range !11, !noundef !12
  %7457 = trunc i8 %7456 to i1
  br i1 %7457, label %7458, label %7481

7458:                                             ; preds = %7455
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7459 unwind label %1026

7459:                                             ; preds = %7458
  br label %7483

7460:                                             ; preds = %7427
  %7461 = landingpad { ptr, i32 }
          cleanup
  %7462 = extractvalue { ptr, i32 } %7461, 0
  store ptr %7462, ptr %5, align 8
  %7463 = extractvalue { ptr, i32 } %7461, 1
  store i32 %7463, ptr %6, align 4
  br label %7468

7464:                                             ; preds = %7430, %7428
  %7465 = landingpad { ptr, i32 }
          cleanup
  %7466 = extractvalue { ptr, i32 } %7465, 0
  store ptr %7466, ptr %5, align 8
  %7467 = extractvalue { ptr, i32 } %7465, 1
  store i32 %7467, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %455) #5
  br label %7468

7468:                                             ; preds = %7464, %7460
  call void @llvm.lifetime.end.p0(i64 24, ptr %455) #5
  br label %12015

7469:                                             ; preds = %7440
  %7470 = landingpad { ptr, i32 }
          cleanup
  %7471 = extractvalue { ptr, i32 } %7470, 0
  store ptr %7471, ptr %5, align 8
  %7472 = extractvalue { ptr, i32 } %7470, 1
  store i32 %7472, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %456) #5
  br label %12015

7473:                                             ; preds = %7443
  %7474 = landingpad { ptr, i32 }
          cleanup
  %7475 = extractvalue { ptr, i32 } %7474, 0
  store ptr %7475, ptr %5, align 8
  %7476 = extractvalue { ptr, i32 } %7474, 1
  store i32 %7476, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %457) #5
  br label %12015

7477:                                             ; preds = %7449
  %7478 = landingpad { ptr, i32 }
          cleanup
  %7479 = extractvalue { ptr, i32 } %7478, 0
  store ptr %7479, ptr %5, align 8
  %7480 = extractvalue { ptr, i32 } %7478, 1
  store i32 %7480, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %458) #5
  br label %12015

7481:                                             ; preds = %7455
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7482 unwind label %1026

7482:                                             ; preds = %7481
  br label %7448, !llvm.loop !102

7483:                                             ; preds = %7459
  br label %7486

7484:                                             ; preds = %7422
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7485 unwind label %1026

7485:                                             ; preds = %7484
  br label %7486

7486:                                             ; preds = %7485, %7483
  br label %7491

7487:                                             ; preds = %5802
  %7488 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef -3)
          to label %7489 unwind label %1026

7489:                                             ; preds = %7487
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7490 unwind label %1026

7490:                                             ; preds = %7489
  br label %7491

7491:                                             ; preds = %7490, %7486, %6876, %6734, %6641, %6528, %6392, %6279, %6166, %6057, %5980, %5923, %5866
  %7492 = load i8, ptr %34, align 1, !tbaa !9, !range !11, !noundef !12
  %7493 = trunc i8 %7492 to i1
  %7494 = zext i1 %7493 to i32
  %7495 = icmp eq i32 %7494, 0
  br i1 %7495, label %7496, label %7751

7496:                                             ; preds = %7491
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7497 unwind label %1026

7497:                                             ; preds = %7496
  call void @llvm.lifetime.start.p0(i64 24, ptr %459) #5
  %7498 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %19)
          to label %7499 unwind label %7539

7499:                                             ; preds = %7497
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %459, ptr noundef nonnull align 1 dereferenceable(1) %7498)
          to label %7500 unwind label %7539

7500:                                             ; preds = %7499
  %7501 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %7502 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7501, ptr noundef nonnull align 8 dereferenceable(24) %459)
          to label %7503 unwind label %7543

7503:                                             ; preds = %7500
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %459) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %459) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %460) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %461) #5
  invoke void @_ZN5sc_dt6sc_intILi2EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %461, i32 noundef 0)
          to label %7504 unwind label %7548

7504:                                             ; preds = %7503
  %7505 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %461, ptr noundef nonnull align 8 dereferenceable(8) %18)
          to label %7506 unwind label %7552

7506:                                             ; preds = %7504
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %460, ptr noundef nonnull align 1 dereferenceable(1) %7505)
          to label %7507 unwind label %7552

7507:                                             ; preds = %7506
  %7508 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %7509 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7508, ptr noundef nonnull align 8 dereferenceable(24) %460)
          to label %7510 unwind label %7556

7510:                                             ; preds = %7507
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %460) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %461) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %461) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %460) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %462) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %463) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %463, i32 noundef 0)
          to label %7511 unwind label %7562

7511:                                             ; preds = %7510
  %7512 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %463, ptr noundef nonnull align 8 dereferenceable(8) %15)
          to label %7513 unwind label %7566

7513:                                             ; preds = %7511
  %7514 = load i8, ptr %14, align 1, !tbaa !9, !range !11, !noundef !12
  %7515 = trunc i8 %7514 to i1
  %7516 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseEb(ptr noundef nonnull align 8 dereferenceable(8) %7512, i1 noundef zeroext %7515)
          to label %7517 unwind label %7566

7517:                                             ; preds = %7513
  invoke void @_ZN5sc_dt6sc_intILi7EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %462, ptr noundef nonnull align 1 dereferenceable(1) %7516)
          to label %7518 unwind label %7566

7518:                                             ; preds = %7517
  %7519 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %7520 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7519, ptr noundef nonnull align 8 dereferenceable(24) %462)
          to label %7521 unwind label %7570

7521:                                             ; preds = %7518
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %462) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %463) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %463) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %462) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %464) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %464, i32 noundef -3)
          to label %7522 unwind label %7576

7522:                                             ; preds = %7521
  %7523 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %7524 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7523, ptr noundef nonnull align 8 dereferenceable(24) %464)
          to label %7525 unwind label %7580

7525:                                             ; preds = %7522
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %464) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %464) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %465) #5
  store i8 1, ptr %465, align 1, !tbaa !9
  %7526 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %7527 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7526, ptr noundef nonnull align 1 dereferenceable(1) %465)
          to label %7528 unwind label %7585

7528:                                             ; preds = %7525
  call void @llvm.lifetime.end.p0(i64 1, ptr %465) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7529 unwind label %1026

7529:                                             ; preds = %7528
  br label %7530

7530:                                             ; preds = %7538, %7529
  %7531 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %7532 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %7531)
          to label %7533 unwind label %1026

7533:                                             ; preds = %7530
  %7534 = load i8, ptr %7532, align 1, !tbaa !9, !range !11, !noundef !12
  %7535 = trunc i8 %7534 to i1
  %7536 = xor i1 %7535, true
  br i1 %7536, label %7537, label %7589

7537:                                             ; preds = %7533
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7538 unwind label %1026

7538:                                             ; preds = %7537
  br label %7530, !llvm.loop !103

7539:                                             ; preds = %7499, %7497
  %7540 = landingpad { ptr, i32 }
          cleanup
  %7541 = extractvalue { ptr, i32 } %7540, 0
  store ptr %7541, ptr %5, align 8
  %7542 = extractvalue { ptr, i32 } %7540, 1
  store i32 %7542, ptr %6, align 4
  br label %7547

7543:                                             ; preds = %7500
  %7544 = landingpad { ptr, i32 }
          cleanup
  %7545 = extractvalue { ptr, i32 } %7544, 0
  store ptr %7545, ptr %5, align 8
  %7546 = extractvalue { ptr, i32 } %7544, 1
  store i32 %7546, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %459) #5
  br label %7547

7547:                                             ; preds = %7543, %7539
  call void @llvm.lifetime.end.p0(i64 24, ptr %459) #5
  br label %12015

7548:                                             ; preds = %7503
  %7549 = landingpad { ptr, i32 }
          cleanup
  %7550 = extractvalue { ptr, i32 } %7549, 0
  store ptr %7550, ptr %5, align 8
  %7551 = extractvalue { ptr, i32 } %7549, 1
  store i32 %7551, ptr %6, align 4
  br label %7561

7552:                                             ; preds = %7506, %7504
  %7553 = landingpad { ptr, i32 }
          cleanup
  %7554 = extractvalue { ptr, i32 } %7553, 0
  store ptr %7554, ptr %5, align 8
  %7555 = extractvalue { ptr, i32 } %7553, 1
  store i32 %7555, ptr %6, align 4
  br label %7560

7556:                                             ; preds = %7507
  %7557 = landingpad { ptr, i32 }
          cleanup
  %7558 = extractvalue { ptr, i32 } %7557, 0
  store ptr %7558, ptr %5, align 8
  %7559 = extractvalue { ptr, i32 } %7557, 1
  store i32 %7559, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %460) #5
  br label %7560

7560:                                             ; preds = %7556, %7552
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %461) #5
  br label %7561

7561:                                             ; preds = %7560, %7548
  call void @llvm.lifetime.end.p0(i64 24, ptr %461) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %460) #5
  br label %12015

7562:                                             ; preds = %7510
  %7563 = landingpad { ptr, i32 }
          cleanup
  %7564 = extractvalue { ptr, i32 } %7563, 0
  store ptr %7564, ptr %5, align 8
  %7565 = extractvalue { ptr, i32 } %7563, 1
  store i32 %7565, ptr %6, align 4
  br label %7575

7566:                                             ; preds = %7517, %7513, %7511
  %7567 = landingpad { ptr, i32 }
          cleanup
  %7568 = extractvalue { ptr, i32 } %7567, 0
  store ptr %7568, ptr %5, align 8
  %7569 = extractvalue { ptr, i32 } %7567, 1
  store i32 %7569, ptr %6, align 4
  br label %7574

7570:                                             ; preds = %7518
  %7571 = landingpad { ptr, i32 }
          cleanup
  %7572 = extractvalue { ptr, i32 } %7571, 0
  store ptr %7572, ptr %5, align 8
  %7573 = extractvalue { ptr, i32 } %7571, 1
  store i32 %7573, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %462) #5
  br label %7574

7574:                                             ; preds = %7570, %7566
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %463) #5
  br label %7575

7575:                                             ; preds = %7574, %7562
  call void @llvm.lifetime.end.p0(i64 24, ptr %463) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %462) #5
  br label %12015

7576:                                             ; preds = %7521
  %7577 = landingpad { ptr, i32 }
          cleanup
  %7578 = extractvalue { ptr, i32 } %7577, 0
  store ptr %7578, ptr %5, align 8
  %7579 = extractvalue { ptr, i32 } %7577, 1
  store i32 %7579, ptr %6, align 4
  br label %7584

7580:                                             ; preds = %7522
  %7581 = landingpad { ptr, i32 }
          cleanup
  %7582 = extractvalue { ptr, i32 } %7581, 0
  store ptr %7582, ptr %5, align 8
  %7583 = extractvalue { ptr, i32 } %7581, 1
  store i32 %7583, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %464) #5
  br label %7584

7584:                                             ; preds = %7580, %7576
  call void @llvm.lifetime.end.p0(i64 24, ptr %464) #5
  br label %12015

7585:                                             ; preds = %7525
  %7586 = landingpad { ptr, i32 }
          cleanup
  %7587 = extractvalue { ptr, i32 } %7586, 0
  store ptr %7587, ptr %5, align 8
  %7588 = extractvalue { ptr, i32 } %7586, 1
  store i32 %7588, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %465) #5
  br label %12015

7589:                                             ; preds = %7533
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7590 unwind label %1026

7590:                                             ; preds = %7589
  call void @llvm.lifetime.start.p0(i64 1, ptr %466) #5
  store i8 0, ptr %466, align 1, !tbaa !9
  %7591 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %7592 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7591, ptr noundef nonnull align 1 dereferenceable(1) %466)
          to label %7593 unwind label %7629

7593:                                             ; preds = %7590
  call void @llvm.lifetime.end.p0(i64 1, ptr %466) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7594 unwind label %1026

7594:                                             ; preds = %7593
  call void @llvm.lifetime.start.p0(i64 24, ptr %467) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %468) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %468, i32 noundef 9)
          to label %7595 unwind label %7633

7595:                                             ; preds = %7594
  %7596 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %468, ptr noundef nonnull align 8 dereferenceable(8) %23)
          to label %7597 unwind label %7637

7597:                                             ; preds = %7595
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %467, ptr noundef nonnull align 1 dereferenceable(1) %7596)
          to label %7598 unwind label %7637

7598:                                             ; preds = %7597
  %7599 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %7600 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7599, ptr noundef nonnull align 8 dereferenceable(24) %467)
          to label %7601 unwind label %7641

7601:                                             ; preds = %7598
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %467) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %468) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %468) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %467) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %469) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %470) #5
  invoke void @_ZN5sc_dt6sc_intILi2EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %470, i32 noundef 0)
          to label %7602 unwind label %7647

7602:                                             ; preds = %7601
  %7603 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %470, ptr noundef nonnull align 8 dereferenceable(8) %18)
          to label %7604 unwind label %7651

7604:                                             ; preds = %7602
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %469, ptr noundef nonnull align 1 dereferenceable(1) %7603)
          to label %7605 unwind label %7651

7605:                                             ; preds = %7604
  %7606 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %7607 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7606, ptr noundef nonnull align 8 dereferenceable(24) %469)
          to label %7608 unwind label %7655

7608:                                             ; preds = %7605
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %469) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %470) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %470) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %469) #5
  %7609 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %7610 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7609, ptr noundef nonnull align 8 dereferenceable(24) %27)
          to label %7611 unwind label %1026

7611:                                             ; preds = %7608
  call void @llvm.lifetime.start.p0(i64 24, ptr %471) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %471, i32 noundef -2)
          to label %7612 unwind label %7661

7612:                                             ; preds = %7611
  %7613 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %7614 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7613, ptr noundef nonnull align 8 dereferenceable(24) %471)
          to label %7615 unwind label %7665

7615:                                             ; preds = %7612
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %471) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %471) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %472) #5
  store i8 1, ptr %472, align 1, !tbaa !9
  %7616 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %7617 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7616, ptr noundef nonnull align 1 dereferenceable(1) %472)
          to label %7618 unwind label %7670

7618:                                             ; preds = %7615
  call void @llvm.lifetime.end.p0(i64 1, ptr %472) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7619 unwind label %1026

7619:                                             ; preds = %7618
  br label %7620

7620:                                             ; preds = %7628, %7619
  %7621 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %7622 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %7621)
          to label %7623 unwind label %1026

7623:                                             ; preds = %7620
  %7624 = load i8, ptr %7622, align 1, !tbaa !9, !range !11, !noundef !12
  %7625 = trunc i8 %7624 to i1
  %7626 = xor i1 %7625, true
  br i1 %7626, label %7627, label %7674

7627:                                             ; preds = %7623
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7628 unwind label %1026

7628:                                             ; preds = %7627
  br label %7620, !llvm.loop !104

7629:                                             ; preds = %7590
  %7630 = landingpad { ptr, i32 }
          cleanup
  %7631 = extractvalue { ptr, i32 } %7630, 0
  store ptr %7631, ptr %5, align 8
  %7632 = extractvalue { ptr, i32 } %7630, 1
  store i32 %7632, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %466) #5
  br label %12015

7633:                                             ; preds = %7594
  %7634 = landingpad { ptr, i32 }
          cleanup
  %7635 = extractvalue { ptr, i32 } %7634, 0
  store ptr %7635, ptr %5, align 8
  %7636 = extractvalue { ptr, i32 } %7634, 1
  store i32 %7636, ptr %6, align 4
  br label %7646

7637:                                             ; preds = %7597, %7595
  %7638 = landingpad { ptr, i32 }
          cleanup
  %7639 = extractvalue { ptr, i32 } %7638, 0
  store ptr %7639, ptr %5, align 8
  %7640 = extractvalue { ptr, i32 } %7638, 1
  store i32 %7640, ptr %6, align 4
  br label %7645

7641:                                             ; preds = %7598
  %7642 = landingpad { ptr, i32 }
          cleanup
  %7643 = extractvalue { ptr, i32 } %7642, 0
  store ptr %7643, ptr %5, align 8
  %7644 = extractvalue { ptr, i32 } %7642, 1
  store i32 %7644, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %467) #5
  br label %7645

7645:                                             ; preds = %7641, %7637
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %468) #5
  br label %7646

7646:                                             ; preds = %7645, %7633
  call void @llvm.lifetime.end.p0(i64 24, ptr %468) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %467) #5
  br label %12015

7647:                                             ; preds = %7601
  %7648 = landingpad { ptr, i32 }
          cleanup
  %7649 = extractvalue { ptr, i32 } %7648, 0
  store ptr %7649, ptr %5, align 8
  %7650 = extractvalue { ptr, i32 } %7648, 1
  store i32 %7650, ptr %6, align 4
  br label %7660

7651:                                             ; preds = %7604, %7602
  %7652 = landingpad { ptr, i32 }
          cleanup
  %7653 = extractvalue { ptr, i32 } %7652, 0
  store ptr %7653, ptr %5, align 8
  %7654 = extractvalue { ptr, i32 } %7652, 1
  store i32 %7654, ptr %6, align 4
  br label %7659

7655:                                             ; preds = %7605
  %7656 = landingpad { ptr, i32 }
          cleanup
  %7657 = extractvalue { ptr, i32 } %7656, 0
  store ptr %7657, ptr %5, align 8
  %7658 = extractvalue { ptr, i32 } %7656, 1
  store i32 %7658, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %469) #5
  br label %7659

7659:                                             ; preds = %7655, %7651
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %470) #5
  br label %7660

7660:                                             ; preds = %7659, %7647
  call void @llvm.lifetime.end.p0(i64 24, ptr %470) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %469) #5
  br label %12015

7661:                                             ; preds = %7611
  %7662 = landingpad { ptr, i32 }
          cleanup
  %7663 = extractvalue { ptr, i32 } %7662, 0
  store ptr %7663, ptr %5, align 8
  %7664 = extractvalue { ptr, i32 } %7662, 1
  store i32 %7664, ptr %6, align 4
  br label %7669

7665:                                             ; preds = %7612
  %7666 = landingpad { ptr, i32 }
          cleanup
  %7667 = extractvalue { ptr, i32 } %7666, 0
  store ptr %7667, ptr %5, align 8
  %7668 = extractvalue { ptr, i32 } %7666, 1
  store i32 %7668, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %471) #5
  br label %7669

7669:                                             ; preds = %7665, %7661
  call void @llvm.lifetime.end.p0(i64 24, ptr %471) #5
  br label %12015

7670:                                             ; preds = %7615
  %7671 = landingpad { ptr, i32 }
          cleanup
  %7672 = extractvalue { ptr, i32 } %7671, 0
  store ptr %7672, ptr %5, align 8
  %7673 = extractvalue { ptr, i32 } %7671, 1
  store i32 %7673, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %472) #5
  br label %12015

7674:                                             ; preds = %7623
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7675 unwind label %1026

7675:                                             ; preds = %7674
  call void @llvm.lifetime.start.p0(i64 1, ptr %473) #5
  store i8 0, ptr %473, align 1, !tbaa !9
  %7676 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %7677 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7676, ptr noundef nonnull align 1 dereferenceable(1) %473)
          to label %7678 unwind label %7710

7678:                                             ; preds = %7675
  call void @llvm.lifetime.end.p0(i64 1, ptr %473) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7679 unwind label %1026

7679:                                             ; preds = %7678
  %7680 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %7681 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7680, ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %7682 unwind label %1026

7682:                                             ; preds = %7679
  call void @llvm.lifetime.start.p0(i64 24, ptr %474) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %475) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %475, i32 noundef 0)
          to label %7683 unwind label %7714

7683:                                             ; preds = %7682
  %7684 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %475)
          to label %7685 unwind label %7718

7685:                                             ; preds = %7683
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %474, ptr noundef nonnull align 1 dereferenceable(1) %7684)
          to label %7686 unwind label %7718

7686:                                             ; preds = %7685
  %7687 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %7688 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7687, ptr noundef nonnull align 8 dereferenceable(24) %474)
          to label %7689 unwind label %7722

7689:                                             ; preds = %7686
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %474) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %475) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %475) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %474) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %476) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %476, i32 noundef 1)
          to label %7690 unwind label %7728

7690:                                             ; preds = %7689
  %7691 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %7692 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7691, ptr noundef nonnull align 8 dereferenceable(24) %476)
          to label %7693 unwind label %7732

7693:                                             ; preds = %7690
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %476) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %476) #5
  %7694 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %7695 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7694, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %7696 unwind label %1026

7696:                                             ; preds = %7693
  call void @llvm.lifetime.start.p0(i64 1, ptr %477) #5
  store i8 1, ptr %477, align 1, !tbaa !9
  %7697 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %7698 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7697, ptr noundef nonnull align 1 dereferenceable(1) %477)
          to label %7699 unwind label %7737

7699:                                             ; preds = %7696
  call void @llvm.lifetime.end.p0(i64 1, ptr %477) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7700 unwind label %1026

7700:                                             ; preds = %7699
  br label %7701

7701:                                             ; preds = %7709, %7700
  %7702 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %7703 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %7702)
          to label %7704 unwind label %1026

7704:                                             ; preds = %7701
  %7705 = load i8, ptr %7703, align 1, !tbaa !9, !range !11, !noundef !12
  %7706 = trunc i8 %7705 to i1
  %7707 = xor i1 %7706, true
  br i1 %7707, label %7708, label %7741

7708:                                             ; preds = %7704
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7709 unwind label %1026

7709:                                             ; preds = %7708
  br label %7701, !llvm.loop !105

7710:                                             ; preds = %7675
  %7711 = landingpad { ptr, i32 }
          cleanup
  %7712 = extractvalue { ptr, i32 } %7711, 0
  store ptr %7712, ptr %5, align 8
  %7713 = extractvalue { ptr, i32 } %7711, 1
  store i32 %7713, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %473) #5
  br label %12015

7714:                                             ; preds = %7682
  %7715 = landingpad { ptr, i32 }
          cleanup
  %7716 = extractvalue { ptr, i32 } %7715, 0
  store ptr %7716, ptr %5, align 8
  %7717 = extractvalue { ptr, i32 } %7715, 1
  store i32 %7717, ptr %6, align 4
  br label %7727

7718:                                             ; preds = %7685, %7683
  %7719 = landingpad { ptr, i32 }
          cleanup
  %7720 = extractvalue { ptr, i32 } %7719, 0
  store ptr %7720, ptr %5, align 8
  %7721 = extractvalue { ptr, i32 } %7719, 1
  store i32 %7721, ptr %6, align 4
  br label %7726

7722:                                             ; preds = %7686
  %7723 = landingpad { ptr, i32 }
          cleanup
  %7724 = extractvalue { ptr, i32 } %7723, 0
  store ptr %7724, ptr %5, align 8
  %7725 = extractvalue { ptr, i32 } %7723, 1
  store i32 %7725, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %474) #5
  br label %7726

7726:                                             ; preds = %7722, %7718
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %475) #5
  br label %7727

7727:                                             ; preds = %7726, %7714
  call void @llvm.lifetime.end.p0(i64 24, ptr %475) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %474) #5
  br label %12015

7728:                                             ; preds = %7689
  %7729 = landingpad { ptr, i32 }
          cleanup
  %7730 = extractvalue { ptr, i32 } %7729, 0
  store ptr %7730, ptr %5, align 8
  %7731 = extractvalue { ptr, i32 } %7729, 1
  store i32 %7731, ptr %6, align 4
  br label %7736

7732:                                             ; preds = %7690
  %7733 = landingpad { ptr, i32 }
          cleanup
  %7734 = extractvalue { ptr, i32 } %7733, 0
  store ptr %7734, ptr %5, align 8
  %7735 = extractvalue { ptr, i32 } %7733, 1
  store i32 %7735, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %476) #5
  br label %7736

7736:                                             ; preds = %7732, %7728
  call void @llvm.lifetime.end.p0(i64 24, ptr %476) #5
  br label %12015

7737:                                             ; preds = %7696
  %7738 = landingpad { ptr, i32 }
          cleanup
  %7739 = extractvalue { ptr, i32 } %7738, 0
  store ptr %7739, ptr %5, align 8
  %7740 = extractvalue { ptr, i32 } %7738, 1
  store i32 %7740, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %477) #5
  br label %12015

7741:                                             ; preds = %7704
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7742 unwind label %1026

7742:                                             ; preds = %7741
  call void @llvm.lifetime.start.p0(i64 1, ptr %478) #5
  store i8 0, ptr %478, align 1, !tbaa !9
  %7743 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %7744 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7743, ptr noundef nonnull align 1 dereferenceable(1) %478)
          to label %7745 unwind label %7747

7745:                                             ; preds = %7742
  call void @llvm.lifetime.end.p0(i64 1, ptr %478) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7746 unwind label %1026

7746:                                             ; preds = %7745
  br label %7753

7747:                                             ; preds = %7742
  %7748 = landingpad { ptr, i32 }
          cleanup
  %7749 = extractvalue { ptr, i32 } %7748, 0
  store ptr %7749, ptr %5, align 8
  %7750 = extractvalue { ptr, i32 } %7748, 1
  store i32 %7750, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %478) #5
  br label %12015

7751:                                             ; preds = %7491
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7752 unwind label %1026

7752:                                             ; preds = %7751
  br label %7753

7753:                                             ; preds = %7752, %7746
  br label %7754

7754:                                             ; preds = %7753, %5684
  br label %11913

7755:                                             ; preds = %2780
  %7756 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
          to label %7757 unwind label %1026

7757:                                             ; preds = %7755
  %7758 = icmp ne i64 %7756, 3
  br i1 %7758, label %7763, label %7759

7759:                                             ; preds = %7757
  %7760 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %15)
          to label %7761 unwind label %1026

7761:                                             ; preds = %7759
  %7762 = icmp eq i64 %7760, 0
  br i1 %7762, label %7763, label %7767

7763:                                             ; preds = %7761, %7757
  %7764 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 1)
          to label %7765 unwind label %1026

7765:                                             ; preds = %7763
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7766 unwind label %1026

7766:                                             ; preds = %7765
  br label %9266

7767:                                             ; preds = %7761
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7768 unwind label %1026

7768:                                             ; preds = %7767
  %7769 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %33, ptr noundef nonnull align 8 dereferenceable(24) %33)
          to label %7770 unwind label %1026

7770:                                             ; preds = %7768
  store i8 1, ptr %34, align 1, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %479) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %479, i32 noundef 1)
          to label %7771 unwind label %7806

7771:                                             ; preds = %7770
  %7772 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %479)
          to label %7773 unwind label %7810

7773:                                             ; preds = %7771
  %7774 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %7772)
          to label %7775 unwind label %7810

7775:                                             ; preds = %7773
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %479) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %479) #5
  %7776 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %7777 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7776, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %7778 unwind label %1026

7778:                                             ; preds = %7775
  %7779 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %7780 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7779, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %7781 unwind label %1026

7781:                                             ; preds = %7778
  call void @llvm.lifetime.start.p0(i64 1, ptr %480) #5
  store i8 1, ptr %480, align 1, !tbaa !9
  %7782 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %7783 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7782, ptr noundef nonnull align 1 dereferenceable(1) %480)
          to label %7784 unwind label %7815

7784:                                             ; preds = %7781
  call void @llvm.lifetime.end.p0(i64 1, ptr %480) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %481) #5
  store i8 1, ptr %481, align 1, !tbaa !9
  %7785 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %7786 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7785, ptr noundef nonnull align 1 dereferenceable(1) %481)
          to label %7787 unwind label %7819

7787:                                             ; preds = %7784
  call void @llvm.lifetime.end.p0(i64 1, ptr %481) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7788 unwind label %1026

7788:                                             ; preds = %7787
  br label %7789

7789:                                             ; preds = %7828, %7788
  br label %7790

7790:                                             ; preds = %7789
  %7791 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %7792 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %7791)
          to label %7793 unwind label %1026

7793:                                             ; preds = %7790
  %7794 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %7792)
          to label %7795 unwind label %1026

7795:                                             ; preds = %7793
  call void @llvm.lifetime.start.p0(i64 1, ptr %482) #5
  store i8 0, ptr %482, align 1, !tbaa !9
  %7796 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %7797 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7796, ptr noundef nonnull align 1 dereferenceable(1) %482)
          to label %7798 unwind label %7823

7798:                                             ; preds = %7795
  call void @llvm.lifetime.end.p0(i64 1, ptr %482) #5
  %7799 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %7800 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %7799)
          to label %7801 unwind label %1026

7801:                                             ; preds = %7798
  %7802 = load i8, ptr %7800, align 1, !tbaa !9, !range !11, !noundef !12
  %7803 = trunc i8 %7802 to i1
  br i1 %7803, label %7804, label %7827

7804:                                             ; preds = %7801
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7805 unwind label %1026

7805:                                             ; preds = %7804
  br label %7829

7806:                                             ; preds = %7770
  %7807 = landingpad { ptr, i32 }
          cleanup
  %7808 = extractvalue { ptr, i32 } %7807, 0
  store ptr %7808, ptr %5, align 8
  %7809 = extractvalue { ptr, i32 } %7807, 1
  store i32 %7809, ptr %6, align 4
  br label %7814

7810:                                             ; preds = %7773, %7771
  %7811 = landingpad { ptr, i32 }
          cleanup
  %7812 = extractvalue { ptr, i32 } %7811, 0
  store ptr %7812, ptr %5, align 8
  %7813 = extractvalue { ptr, i32 } %7811, 1
  store i32 %7813, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %479) #5
  br label %7814

7814:                                             ; preds = %7810, %7806
  call void @llvm.lifetime.end.p0(i64 24, ptr %479) #5
  br label %12015

7815:                                             ; preds = %7781
  %7816 = landingpad { ptr, i32 }
          cleanup
  %7817 = extractvalue { ptr, i32 } %7816, 0
  store ptr %7817, ptr %5, align 8
  %7818 = extractvalue { ptr, i32 } %7816, 1
  store i32 %7818, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %480) #5
  br label %12015

7819:                                             ; preds = %7784
  %7820 = landingpad { ptr, i32 }
          cleanup
  %7821 = extractvalue { ptr, i32 } %7820, 0
  store ptr %7821, ptr %5, align 8
  %7822 = extractvalue { ptr, i32 } %7820, 1
  store i32 %7822, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %481) #5
  br label %12015

7823:                                             ; preds = %7795
  %7824 = landingpad { ptr, i32 }
          cleanup
  %7825 = extractvalue { ptr, i32 } %7824, 0
  store ptr %7825, ptr %5, align 8
  %7826 = extractvalue { ptr, i32 } %7824, 1
  store i32 %7826, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %482) #5
  br label %12015

7827:                                             ; preds = %7801
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7828 unwind label %1026

7828:                                             ; preds = %7827
  br label %7789, !llvm.loop !106

7829:                                             ; preds = %7805
  %7830 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 11, i32 noundef 0)
          to label %7831 unwind label %1026

7831:                                             ; preds = %7829
  %7832 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %26, ptr noundef nonnull align 8 dereferenceable(28) %7830)
          to label %7833 unwind label %1026

7833:                                             ; preds = %7831
  call void @llvm.lifetime.start.p0(i64 24, ptr %483) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %483, i32 noundef 10)
          to label %7834 unwind label %7869

7834:                                             ; preds = %7833
  %7835 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %483)
          to label %7836 unwind label %7873

7836:                                             ; preds = %7834
  %7837 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %7835)
          to label %7838 unwind label %7873

7838:                                             ; preds = %7836
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %483) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %483) #5
  %7839 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %7840 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7839, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %7841 unwind label %1026

7841:                                             ; preds = %7838
  %7842 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %7843 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7842, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %7844 unwind label %1026

7844:                                             ; preds = %7841
  call void @llvm.lifetime.start.p0(i64 1, ptr %484) #5
  store i8 1, ptr %484, align 1, !tbaa !9
  %7845 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %7846 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7845, ptr noundef nonnull align 1 dereferenceable(1) %484)
          to label %7847 unwind label %7878

7847:                                             ; preds = %7844
  call void @llvm.lifetime.end.p0(i64 1, ptr %484) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %485) #5
  store i8 1, ptr %485, align 1, !tbaa !9
  %7848 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %7849 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7848, ptr noundef nonnull align 1 dereferenceable(1) %485)
          to label %7850 unwind label %7882

7850:                                             ; preds = %7847
  call void @llvm.lifetime.end.p0(i64 1, ptr %485) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7851 unwind label %1026

7851:                                             ; preds = %7850
  br label %7852

7852:                                             ; preds = %7891, %7851
  br label %7853

7853:                                             ; preds = %7852
  %7854 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %7855 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %7854)
          to label %7856 unwind label %1026

7856:                                             ; preds = %7853
  %7857 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %7855)
          to label %7858 unwind label %1026

7858:                                             ; preds = %7856
  call void @llvm.lifetime.start.p0(i64 1, ptr %486) #5
  store i8 0, ptr %486, align 1, !tbaa !9
  %7859 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %7860 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7859, ptr noundef nonnull align 1 dereferenceable(1) %486)
          to label %7861 unwind label %7886

7861:                                             ; preds = %7858
  call void @llvm.lifetime.end.p0(i64 1, ptr %486) #5
  %7862 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %7863 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %7862)
          to label %7864 unwind label %1026

7864:                                             ; preds = %7861
  %7865 = load i8, ptr %7863, align 1, !tbaa !9, !range !11, !noundef !12
  %7866 = trunc i8 %7865 to i1
  br i1 %7866, label %7867, label %7890

7867:                                             ; preds = %7864
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7868 unwind label %1026

7868:                                             ; preds = %7867
  br label %7892

7869:                                             ; preds = %7833
  %7870 = landingpad { ptr, i32 }
          cleanup
  %7871 = extractvalue { ptr, i32 } %7870, 0
  store ptr %7871, ptr %5, align 8
  %7872 = extractvalue { ptr, i32 } %7870, 1
  store i32 %7872, ptr %6, align 4
  br label %7877

7873:                                             ; preds = %7836, %7834
  %7874 = landingpad { ptr, i32 }
          cleanup
  %7875 = extractvalue { ptr, i32 } %7874, 0
  store ptr %7875, ptr %5, align 8
  %7876 = extractvalue { ptr, i32 } %7874, 1
  store i32 %7876, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %483) #5
  br label %7877

7877:                                             ; preds = %7873, %7869
  call void @llvm.lifetime.end.p0(i64 24, ptr %483) #5
  br label %12015

7878:                                             ; preds = %7844
  %7879 = landingpad { ptr, i32 }
          cleanup
  %7880 = extractvalue { ptr, i32 } %7879, 0
  store ptr %7880, ptr %5, align 8
  %7881 = extractvalue { ptr, i32 } %7879, 1
  store i32 %7881, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %484) #5
  br label %12015

7882:                                             ; preds = %7847
  %7883 = landingpad { ptr, i32 }
          cleanup
  %7884 = extractvalue { ptr, i32 } %7883, 0
  store ptr %7884, ptr %5, align 8
  %7885 = extractvalue { ptr, i32 } %7883, 1
  store i32 %7885, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %485) #5
  br label %12015

7886:                                             ; preds = %7858
  %7887 = landingpad { ptr, i32 }
          cleanup
  %7888 = extractvalue { ptr, i32 } %7887, 0
  store ptr %7888, ptr %5, align 8
  %7889 = extractvalue { ptr, i32 } %7887, 1
  store i32 %7889, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %486) #5
  br label %12015

7890:                                             ; preds = %7864
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7891 unwind label %1026

7891:                                             ; preds = %7890
  br label %7852, !llvm.loop !107

7892:                                             ; preds = %7868
  %7893 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 11
  %7894 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %7893)
          to label %7895 unwind label %1026

7895:                                             ; preds = %7892
  %7896 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %7894, i32 noundef 3)
          to label %7897 unwind label %1026

7897:                                             ; preds = %7895
  %7898 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %7896)
          to label %7899 unwind label %1026

7899:                                             ; preds = %7897
  %7900 = icmp ne i64 %7898, 0
  br i1 %7900, label %7901, label %7904

7901:                                             ; preds = %7899
  %7902 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 4096)
          to label %7903 unwind label %1026

7903:                                             ; preds = %7901
  br label %7907

7904:                                             ; preds = %7899
  %7905 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %4)
          to label %7906 unwind label %1026

7906:                                             ; preds = %7904
  br label %7907

7907:                                             ; preds = %7906, %7903
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7908 unwind label %1026

7908:                                             ; preds = %7907
  %7909 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %38, ptr noundef nonnull align 8 dereferenceable(24) %4)
          to label %7910 unwind label %1026

7910:                                             ; preds = %7908
  %7911 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %38)
          to label %7912 unwind label %1026

7912:                                             ; preds = %7910
  %7913 = trunc i64 %7911 to i32
  switch i32 %7913, label %9261 [
    i32 4, label %7914
    i32 5, label %8135
    i32 6, label %8256
    i32 7, label %8377
    i32 8, label %8535
    i32 9, label %8633
    i32 -1, label %8733
  ]

7914:                                             ; preds = %7912
  %7915 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7916 unwind label %1026

7916:                                             ; preds = %7914
  %7917 = icmp ne i64 %7915, 6
  br i1 %7917, label %7918, label %7922

7918:                                             ; preds = %7916
  %7919 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 2)
          to label %7920 unwind label %1026

7920:                                             ; preds = %7918
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7921 unwind label %1026

7921:                                             ; preds = %7920
  br label %8134

7922:                                             ; preds = %7916
  call void @llvm.lifetime.start.p0(i64 24, ptr %487) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %487, i32 noundef 24)
          to label %7923 unwind label %7958

7923:                                             ; preds = %7922
  %7924 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %487)
          to label %7925 unwind label %7962

7925:                                             ; preds = %7923
  %7926 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %7924)
          to label %7927 unwind label %7962

7927:                                             ; preds = %7925
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %487) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %487) #5
  %7928 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %7929 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7928, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %7930 unwind label %1026

7930:                                             ; preds = %7927
  %7931 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %7932 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %7931, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %7933 unwind label %1026

7933:                                             ; preds = %7930
  call void @llvm.lifetime.start.p0(i64 1, ptr %488) #5
  store i8 1, ptr %488, align 1, !tbaa !9
  %7934 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %7935 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7934, ptr noundef nonnull align 1 dereferenceable(1) %488)
          to label %7936 unwind label %7967

7936:                                             ; preds = %7933
  call void @llvm.lifetime.end.p0(i64 1, ptr %488) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %489) #5
  store i8 1, ptr %489, align 1, !tbaa !9
  %7937 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %7938 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7937, ptr noundef nonnull align 1 dereferenceable(1) %489)
          to label %7939 unwind label %7971

7939:                                             ; preds = %7936
  call void @llvm.lifetime.end.p0(i64 1, ptr %489) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7940 unwind label %1026

7940:                                             ; preds = %7939
  br label %7941

7941:                                             ; preds = %7980, %7940
  br label %7942

7942:                                             ; preds = %7941
  %7943 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %7944 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %7943)
          to label %7945 unwind label %1026

7945:                                             ; preds = %7942
  %7946 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %7944)
          to label %7947 unwind label %1026

7947:                                             ; preds = %7945
  call void @llvm.lifetime.start.p0(i64 1, ptr %490) #5
  store i8 0, ptr %490, align 1, !tbaa !9
  %7948 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %7949 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %7948, ptr noundef nonnull align 1 dereferenceable(1) %490)
          to label %7950 unwind label %7975

7950:                                             ; preds = %7947
  call void @llvm.lifetime.end.p0(i64 1, ptr %490) #5
  %7951 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %7952 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %7951)
          to label %7953 unwind label %1026

7953:                                             ; preds = %7950
  %7954 = load i8, ptr %7952, align 1, !tbaa !9, !range !11, !noundef !12
  %7955 = trunc i8 %7954 to i1
  br i1 %7955, label %7956, label %7979

7956:                                             ; preds = %7953
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7957 unwind label %1026

7957:                                             ; preds = %7956
  br label %7981

7958:                                             ; preds = %7922
  %7959 = landingpad { ptr, i32 }
          cleanup
  %7960 = extractvalue { ptr, i32 } %7959, 0
  store ptr %7960, ptr %5, align 8
  %7961 = extractvalue { ptr, i32 } %7959, 1
  store i32 %7961, ptr %6, align 4
  br label %7966

7962:                                             ; preds = %7925, %7923
  %7963 = landingpad { ptr, i32 }
          cleanup
  %7964 = extractvalue { ptr, i32 } %7963, 0
  store ptr %7964, ptr %5, align 8
  %7965 = extractvalue { ptr, i32 } %7963, 1
  store i32 %7965, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %487) #5
  br label %7966

7966:                                             ; preds = %7962, %7958
  call void @llvm.lifetime.end.p0(i64 24, ptr %487) #5
  br label %12015

7967:                                             ; preds = %7933
  %7968 = landingpad { ptr, i32 }
          cleanup
  %7969 = extractvalue { ptr, i32 } %7968, 0
  store ptr %7969, ptr %5, align 8
  %7970 = extractvalue { ptr, i32 } %7968, 1
  store i32 %7970, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %488) #5
  br label %12015

7971:                                             ; preds = %7936
  %7972 = landingpad { ptr, i32 }
          cleanup
  %7973 = extractvalue { ptr, i32 } %7972, 0
  store ptr %7973, ptr %5, align 8
  %7974 = extractvalue { ptr, i32 } %7972, 1
  store i32 %7974, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %489) #5
  br label %12015

7975:                                             ; preds = %7947
  %7976 = landingpad { ptr, i32 }
          cleanup
  %7977 = extractvalue { ptr, i32 } %7976, 0
  store ptr %7977, ptr %5, align 8
  %7978 = extractvalue { ptr, i32 } %7976, 1
  store i32 %7978, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %490) #5
  br label %12015

7979:                                             ; preds = %7953
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %7980 unwind label %1026

7980:                                             ; preds = %7979
  br label %7941, !llvm.loop !108

7981:                                             ; preds = %7957
  call void @llvm.lifetime.start.p0(i64 24, ptr %491) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %491, i32 noundef 1)
          to label %7982 unwind label %7999

7982:                                             ; preds = %7981
  %7983 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 14, i32 noundef 0)
          to label %7984 unwind label %8003

7984:                                             ; preds = %7982
  %7985 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %491, ptr noundef nonnull align 8 dereferenceable(8) %7983)
          to label %7986 unwind label %8003

7986:                                             ; preds = %7984
  %7987 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 1 dereferenceable(1) %7985)
          to label %7988 unwind label %8003

7988:                                             ; preds = %7986
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %491) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %491) #5
  %7989 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 0)
          to label %7990 unwind label %1026

7990:                                             ; preds = %7988
  %7991 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %7989)
          to label %7992 unwind label %1026

7992:                                             ; preds = %7990
  %7993 = icmp ne i64 %7991, 0
  br i1 %7993, label %7994, label %8008

7994:                                             ; preds = %7992
  %7995 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 8)
          to label %7996 unwind label %1026

7996:                                             ; preds = %7994
  %7997 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 9)
          to label %7998 unwind label %1026

7998:                                             ; preds = %7996
  br label %8013

7999:                                             ; preds = %7981
  %8000 = landingpad { ptr, i32 }
          cleanup
  %8001 = extractvalue { ptr, i32 } %8000, 0
  store ptr %8001, ptr %5, align 8
  %8002 = extractvalue { ptr, i32 } %8000, 1
  store i32 %8002, ptr %6, align 4
  br label %8007

8003:                                             ; preds = %7986, %7984, %7982
  %8004 = landingpad { ptr, i32 }
          cleanup
  %8005 = extractvalue { ptr, i32 } %8004, 0
  store ptr %8005, ptr %5, align 8
  %8006 = extractvalue { ptr, i32 } %8004, 1
  store i32 %8006, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %491) #5
  br label %8007

8007:                                             ; preds = %8003, %7999
  call void @llvm.lifetime.end.p0(i64 24, ptr %491) #5
  br label %12015

8008:                                             ; preds = %7992
  %8009 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 16)
          to label %8010 unwind label %1026

8010:                                             ; preds = %8008
  %8011 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 17)
          to label %8012 unwind label %1026

8012:                                             ; preds = %8010
  br label %8013

8013:                                             ; preds = %8012, %7998
  %8014 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %8015 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8014, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %8016 unwind label %1026

8016:                                             ; preds = %8013
  %8017 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %8018 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8017, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %8019 unwind label %1026

8019:                                             ; preds = %8016
  call void @llvm.lifetime.start.p0(i64 1, ptr %492) #5
  store i8 0, ptr %492, align 1, !tbaa !9
  %8020 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %8021 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8020, ptr noundef nonnull align 1 dereferenceable(1) %492)
          to label %8022 unwind label %8039

8022:                                             ; preds = %8019
  call void @llvm.lifetime.end.p0(i64 1, ptr %492) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %493) #5
  store i8 1, ptr %493, align 1, !tbaa !9
  %8023 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %8024 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8023, ptr noundef nonnull align 1 dereferenceable(1) %493)
          to label %8025 unwind label %8043

8025:                                             ; preds = %8022
  call void @llvm.lifetime.end.p0(i64 1, ptr %493) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8026 unwind label %1026

8026:                                             ; preds = %8025
  br label %8027

8027:                                             ; preds = %8052, %8026
  br label %8028

8028:                                             ; preds = %8027
  call void @llvm.lifetime.start.p0(i64 1, ptr %494) #5
  store i8 0, ptr %494, align 1, !tbaa !9
  %8029 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %8030 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8029, ptr noundef nonnull align 1 dereferenceable(1) %494)
          to label %8031 unwind label %8047

8031:                                             ; preds = %8028
  call void @llvm.lifetime.end.p0(i64 1, ptr %494) #5
  %8032 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %8033 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %8032)
          to label %8034 unwind label %1026

8034:                                             ; preds = %8031
  %8035 = load i8, ptr %8033, align 1, !tbaa !9, !range !11, !noundef !12
  %8036 = trunc i8 %8035 to i1
  br i1 %8036, label %8037, label %8051

8037:                                             ; preds = %8034
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8038 unwind label %1026

8038:                                             ; preds = %8037
  br label %8053

8039:                                             ; preds = %8019
  %8040 = landingpad { ptr, i32 }
          cleanup
  %8041 = extractvalue { ptr, i32 } %8040, 0
  store ptr %8041, ptr %5, align 8
  %8042 = extractvalue { ptr, i32 } %8040, 1
  store i32 %8042, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %492) #5
  br label %12015

8043:                                             ; preds = %8022
  %8044 = landingpad { ptr, i32 }
          cleanup
  %8045 = extractvalue { ptr, i32 } %8044, 0
  store ptr %8045, ptr %5, align 8
  %8046 = extractvalue { ptr, i32 } %8044, 1
  store i32 %8046, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %493) #5
  br label %12015

8047:                                             ; preds = %8028
  %8048 = landingpad { ptr, i32 }
          cleanup
  %8049 = extractvalue { ptr, i32 } %8048, 0
  store ptr %8049, ptr %5, align 8
  %8050 = extractvalue { ptr, i32 } %8048, 1
  store i32 %8050, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %494) #5
  br label %12015

8051:                                             ; preds = %8034
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8052 unwind label %1026

8052:                                             ; preds = %8051
  br label %8027, !llvm.loop !109

8053:                                             ; preds = %8038
  call void @llvm.lifetime.start.p0(i64 24, ptr %495) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %496) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %496, i32 noundef 25)
          to label %8054 unwind label %8088

8054:                                             ; preds = %8053
  %8055 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %496)
          to label %8056 unwind label %8092

8056:                                             ; preds = %8054
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %495, ptr noundef nonnull align 1 dereferenceable(1) %8055)
          to label %8057 unwind label %8092

8057:                                             ; preds = %8056
  %8058 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %8059 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8058, ptr noundef nonnull align 8 dereferenceable(24) %495)
          to label %8060 unwind label %8096

8060:                                             ; preds = %8057
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %495) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %496) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %496) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %495) #5
  %8061 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %8062 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8061, ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %8063 unwind label %1026

8063:                                             ; preds = %8060
  call void @llvm.lifetime.start.p0(i64 24, ptr %497) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %497, i32 noundef 2)
          to label %8064 unwind label %8102

8064:                                             ; preds = %8063
  %8065 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %8066 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8065, ptr noundef nonnull align 8 dereferenceable(24) %497)
          to label %8067 unwind label %8106

8067:                                             ; preds = %8064
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %497) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %497) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %498) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %498, i32 noundef 3)
          to label %8068 unwind label %8111

8068:                                             ; preds = %8067
  %8069 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %8070 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8069, ptr noundef nonnull align 8 dereferenceable(24) %498)
          to label %8071 unwind label %8115

8071:                                             ; preds = %8068
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %498) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %498) #5
  %8072 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %8073 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8072, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %8074 unwind label %1026

8074:                                             ; preds = %8071
  call void @llvm.lifetime.start.p0(i64 1, ptr %499) #5
  store i8 1, ptr %499, align 1, !tbaa !9
  %8075 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %8076 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8075, ptr noundef nonnull align 1 dereferenceable(1) %499)
          to label %8077 unwind label %8120

8077:                                             ; preds = %8074
  call void @llvm.lifetime.end.p0(i64 1, ptr %499) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8078 unwind label %1026

8078:                                             ; preds = %8077
  br label %8079

8079:                                             ; preds = %8087, %8078
  %8080 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %8081 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %8080)
          to label %8082 unwind label %1026

8082:                                             ; preds = %8079
  %8083 = load i8, ptr %8081, align 1, !tbaa !9, !range !11, !noundef !12
  %8084 = trunc i8 %8083 to i1
  %8085 = xor i1 %8084, true
  br i1 %8085, label %8086, label %8124

8086:                                             ; preds = %8082
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8087 unwind label %1026

8087:                                             ; preds = %8086
  br label %8079, !llvm.loop !110

8088:                                             ; preds = %8053
  %8089 = landingpad { ptr, i32 }
          cleanup
  %8090 = extractvalue { ptr, i32 } %8089, 0
  store ptr %8090, ptr %5, align 8
  %8091 = extractvalue { ptr, i32 } %8089, 1
  store i32 %8091, ptr %6, align 4
  br label %8101

8092:                                             ; preds = %8056, %8054
  %8093 = landingpad { ptr, i32 }
          cleanup
  %8094 = extractvalue { ptr, i32 } %8093, 0
  store ptr %8094, ptr %5, align 8
  %8095 = extractvalue { ptr, i32 } %8093, 1
  store i32 %8095, ptr %6, align 4
  br label %8100

8096:                                             ; preds = %8057
  %8097 = landingpad { ptr, i32 }
          cleanup
  %8098 = extractvalue { ptr, i32 } %8097, 0
  store ptr %8098, ptr %5, align 8
  %8099 = extractvalue { ptr, i32 } %8097, 1
  store i32 %8099, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %495) #5
  br label %8100

8100:                                             ; preds = %8096, %8092
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %496) #5
  br label %8101

8101:                                             ; preds = %8100, %8088
  call void @llvm.lifetime.end.p0(i64 24, ptr %496) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %495) #5
  br label %12015

8102:                                             ; preds = %8063
  %8103 = landingpad { ptr, i32 }
          cleanup
  %8104 = extractvalue { ptr, i32 } %8103, 0
  store ptr %8104, ptr %5, align 8
  %8105 = extractvalue { ptr, i32 } %8103, 1
  store i32 %8105, ptr %6, align 4
  br label %8110

8106:                                             ; preds = %8064
  %8107 = landingpad { ptr, i32 }
          cleanup
  %8108 = extractvalue { ptr, i32 } %8107, 0
  store ptr %8108, ptr %5, align 8
  %8109 = extractvalue { ptr, i32 } %8107, 1
  store i32 %8109, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %497) #5
  br label %8110

8110:                                             ; preds = %8106, %8102
  call void @llvm.lifetime.end.p0(i64 24, ptr %497) #5
  br label %12015

8111:                                             ; preds = %8067
  %8112 = landingpad { ptr, i32 }
          cleanup
  %8113 = extractvalue { ptr, i32 } %8112, 0
  store ptr %8113, ptr %5, align 8
  %8114 = extractvalue { ptr, i32 } %8112, 1
  store i32 %8114, ptr %6, align 4
  br label %8119

8115:                                             ; preds = %8068
  %8116 = landingpad { ptr, i32 }
          cleanup
  %8117 = extractvalue { ptr, i32 } %8116, 0
  store ptr %8117, ptr %5, align 8
  %8118 = extractvalue { ptr, i32 } %8116, 1
  store i32 %8118, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %498) #5
  br label %8119

8119:                                             ; preds = %8115, %8111
  call void @llvm.lifetime.end.p0(i64 24, ptr %498) #5
  br label %12015

8120:                                             ; preds = %8074
  %8121 = landingpad { ptr, i32 }
          cleanup
  %8122 = extractvalue { ptr, i32 } %8121, 0
  store ptr %8122, ptr %5, align 8
  %8123 = extractvalue { ptr, i32 } %8121, 1
  store i32 %8123, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %499) #5
  br label %12015

8124:                                             ; preds = %8082
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8125 unwind label %1026

8125:                                             ; preds = %8124
  call void @llvm.lifetime.start.p0(i64 1, ptr %500) #5
  store i8 0, ptr %500, align 1, !tbaa !9
  %8126 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %8127 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8126, ptr noundef nonnull align 1 dereferenceable(1) %500)
          to label %8128 unwind label %8130

8128:                                             ; preds = %8125
  call void @llvm.lifetime.end.p0(i64 1, ptr %500) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8129 unwind label %1026

8129:                                             ; preds = %8128
  br label %8134

8130:                                             ; preds = %8125
  %8131 = landingpad { ptr, i32 }
          cleanup
  %8132 = extractvalue { ptr, i32 } %8131, 0
  store ptr %8132, ptr %5, align 8
  %8133 = extractvalue { ptr, i32 } %8131, 1
  store i32 %8133, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %500) #5
  br label %12015

8134:                                             ; preds = %8129, %7921
  br label %9265

8135:                                             ; preds = %7912
  %8136 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %8137 unwind label %1026

8137:                                             ; preds = %8135
  %8138 = icmp ne i64 %8136, 64
  br i1 %8138, label %8139, label %8143

8139:                                             ; preds = %8137
  %8140 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 2)
          to label %8141 unwind label %1026

8141:                                             ; preds = %8139
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8142 unwind label %1026

8142:                                             ; preds = %8141
  br label %8255

8143:                                             ; preds = %8137
  call void @llvm.lifetime.start.p0(i64 24, ptr %501) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %502) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %502, i32 noundef 24)
          to label %8144 unwind label %8165

8144:                                             ; preds = %8143
  %8145 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %502)
          to label %8146 unwind label %8169

8146:                                             ; preds = %8144
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %501, ptr noundef nonnull align 1 dereferenceable(1) %8145)
          to label %8147 unwind label %8169

8147:                                             ; preds = %8146
  %8148 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %8149 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8148, ptr noundef nonnull align 8 dereferenceable(24) %501)
          to label %8150 unwind label %8173

8150:                                             ; preds = %8147
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %501) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %502) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %502) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %501) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %503) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %503, i32 noundef 32)
          to label %8151 unwind label %8179

8151:                                             ; preds = %8150
  %8152 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %8153 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8152, ptr noundef nonnull align 8 dereferenceable(24) %503)
          to label %8154 unwind label %8183

8154:                                             ; preds = %8151
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %503) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %503) #5
  %8155 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 0)
          to label %8156 unwind label %1026

8156:                                             ; preds = %8154
  %8157 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %8155)
          to label %8158 unwind label %1026

8158:                                             ; preds = %8156
  %8159 = icmp ne i64 %8157, 0
  br i1 %8159, label %8160, label %8197

8160:                                             ; preds = %8158
  call void @llvm.lifetime.start.p0(i64 24, ptr %504) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %504, i32 noundef 64)
          to label %8161 unwind label %8188

8161:                                             ; preds = %8160
  %8162 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %8163 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8162, ptr noundef nonnull align 8 dereferenceable(24) %504)
          to label %8164 unwind label %8192

8164:                                             ; preds = %8161
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %504) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %504) #5
  br label %8211

8165:                                             ; preds = %8143
  %8166 = landingpad { ptr, i32 }
          cleanup
  %8167 = extractvalue { ptr, i32 } %8166, 0
  store ptr %8167, ptr %5, align 8
  %8168 = extractvalue { ptr, i32 } %8166, 1
  store i32 %8168, ptr %6, align 4
  br label %8178

8169:                                             ; preds = %8146, %8144
  %8170 = landingpad { ptr, i32 }
          cleanup
  %8171 = extractvalue { ptr, i32 } %8170, 0
  store ptr %8171, ptr %5, align 8
  %8172 = extractvalue { ptr, i32 } %8170, 1
  store i32 %8172, ptr %6, align 4
  br label %8177

8173:                                             ; preds = %8147
  %8174 = landingpad { ptr, i32 }
          cleanup
  %8175 = extractvalue { ptr, i32 } %8174, 0
  store ptr %8175, ptr %5, align 8
  %8176 = extractvalue { ptr, i32 } %8174, 1
  store i32 %8176, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %501) #5
  br label %8177

8177:                                             ; preds = %8173, %8169
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %502) #5
  br label %8178

8178:                                             ; preds = %8177, %8165
  call void @llvm.lifetime.end.p0(i64 24, ptr %502) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %501) #5
  br label %12015

8179:                                             ; preds = %8150
  %8180 = landingpad { ptr, i32 }
          cleanup
  %8181 = extractvalue { ptr, i32 } %8180, 0
  store ptr %8181, ptr %5, align 8
  %8182 = extractvalue { ptr, i32 } %8180, 1
  store i32 %8182, ptr %6, align 4
  br label %8187

8183:                                             ; preds = %8151
  %8184 = landingpad { ptr, i32 }
          cleanup
  %8185 = extractvalue { ptr, i32 } %8184, 0
  store ptr %8185, ptr %5, align 8
  %8186 = extractvalue { ptr, i32 } %8184, 1
  store i32 %8186, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %503) #5
  br label %8187

8187:                                             ; preds = %8183, %8179
  call void @llvm.lifetime.end.p0(i64 24, ptr %503) #5
  br label %12015

8188:                                             ; preds = %8160
  %8189 = landingpad { ptr, i32 }
          cleanup
  %8190 = extractvalue { ptr, i32 } %8189, 0
  store ptr %8190, ptr %5, align 8
  %8191 = extractvalue { ptr, i32 } %8189, 1
  store i32 %8191, ptr %6, align 4
  br label %8196

8192:                                             ; preds = %8161
  %8193 = landingpad { ptr, i32 }
          cleanup
  %8194 = extractvalue { ptr, i32 } %8193, 0
  store ptr %8194, ptr %5, align 8
  %8195 = extractvalue { ptr, i32 } %8193, 1
  store i32 %8195, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %504) #5
  br label %8196

8196:                                             ; preds = %8192, %8188
  call void @llvm.lifetime.end.p0(i64 24, ptr %504) #5
  br label %12015

8197:                                             ; preds = %8158
  call void @llvm.lifetime.start.p0(i64 24, ptr %505) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %505, i32 noundef 96)
          to label %8198 unwind label %8202

8198:                                             ; preds = %8197
  %8199 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %8200 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8199, ptr noundef nonnull align 8 dereferenceable(24) %505)
          to label %8201 unwind label %8206

8201:                                             ; preds = %8198
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %505) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %505) #5
  br label %8211

8202:                                             ; preds = %8197
  %8203 = landingpad { ptr, i32 }
          cleanup
  %8204 = extractvalue { ptr, i32 } %8203, 0
  store ptr %8204, ptr %5, align 8
  %8205 = extractvalue { ptr, i32 } %8203, 1
  store i32 %8205, ptr %6, align 4
  br label %8210

8206:                                             ; preds = %8198
  %8207 = landingpad { ptr, i32 }
          cleanup
  %8208 = extractvalue { ptr, i32 } %8207, 0
  store ptr %8208, ptr %5, align 8
  %8209 = extractvalue { ptr, i32 } %8207, 1
  store i32 %8209, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %505) #5
  br label %8210

8210:                                             ; preds = %8206, %8202
  call void @llvm.lifetime.end.p0(i64 24, ptr %505) #5
  br label %12015

8211:                                             ; preds = %8201, %8164
  call void @llvm.lifetime.start.p0(i64 24, ptr %506) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %506, i32 noundef 3)
          to label %8212 unwind label %8232

8212:                                             ; preds = %8211
  %8213 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %8214 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8213, ptr noundef nonnull align 8 dereferenceable(24) %506)
          to label %8215 unwind label %8236

8215:                                             ; preds = %8212
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %506) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %506) #5
  %8216 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %8217 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8216, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %8218 unwind label %1026

8218:                                             ; preds = %8215
  call void @llvm.lifetime.start.p0(i64 1, ptr %507) #5
  store i8 1, ptr %507, align 1, !tbaa !9
  %8219 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %8220 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8219, ptr noundef nonnull align 1 dereferenceable(1) %507)
          to label %8221 unwind label %8241

8221:                                             ; preds = %8218
  call void @llvm.lifetime.end.p0(i64 1, ptr %507) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8222 unwind label %1026

8222:                                             ; preds = %8221
  br label %8223

8223:                                             ; preds = %8231, %8222
  %8224 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %8225 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %8224)
          to label %8226 unwind label %1026

8226:                                             ; preds = %8223
  %8227 = load i8, ptr %8225, align 1, !tbaa !9, !range !11, !noundef !12
  %8228 = trunc i8 %8227 to i1
  %8229 = xor i1 %8228, true
  br i1 %8229, label %8230, label %8245

8230:                                             ; preds = %8226
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8231 unwind label %1026

8231:                                             ; preds = %8230
  br label %8223, !llvm.loop !111

8232:                                             ; preds = %8211
  %8233 = landingpad { ptr, i32 }
          cleanup
  %8234 = extractvalue { ptr, i32 } %8233, 0
  store ptr %8234, ptr %5, align 8
  %8235 = extractvalue { ptr, i32 } %8233, 1
  store i32 %8235, ptr %6, align 4
  br label %8240

8236:                                             ; preds = %8212
  %8237 = landingpad { ptr, i32 }
          cleanup
  %8238 = extractvalue { ptr, i32 } %8237, 0
  store ptr %8238, ptr %5, align 8
  %8239 = extractvalue { ptr, i32 } %8237, 1
  store i32 %8239, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %506) #5
  br label %8240

8240:                                             ; preds = %8236, %8232
  call void @llvm.lifetime.end.p0(i64 24, ptr %506) #5
  br label %12015

8241:                                             ; preds = %8218
  %8242 = landingpad { ptr, i32 }
          cleanup
  %8243 = extractvalue { ptr, i32 } %8242, 0
  store ptr %8243, ptr %5, align 8
  %8244 = extractvalue { ptr, i32 } %8242, 1
  store i32 %8244, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %507) #5
  br label %12015

8245:                                             ; preds = %8226
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8246 unwind label %1026

8246:                                             ; preds = %8245
  call void @llvm.lifetime.start.p0(i64 1, ptr %508) #5
  store i8 0, ptr %508, align 1, !tbaa !9
  %8247 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %8248 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8247, ptr noundef nonnull align 1 dereferenceable(1) %508)
          to label %8249 unwind label %8251

8249:                                             ; preds = %8246
  call void @llvm.lifetime.end.p0(i64 1, ptr %508) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8250 unwind label %1026

8250:                                             ; preds = %8249
  br label %8255

8251:                                             ; preds = %8246
  %8252 = landingpad { ptr, i32 }
          cleanup
  %8253 = extractvalue { ptr, i32 } %8252, 0
  store ptr %8253, ptr %5, align 8
  %8254 = extractvalue { ptr, i32 } %8252, 1
  store i32 %8254, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %508) #5
  br label %12015

8255:                                             ; preds = %8250, %8142
  br label %9265

8256:                                             ; preds = %7912
  %8257 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %8258 unwind label %1026

8258:                                             ; preds = %8256
  %8259 = icmp ne i64 %8257, 64
  br i1 %8259, label %8260, label %8264

8260:                                             ; preds = %8258
  %8261 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 2)
          to label %8262 unwind label %1026

8262:                                             ; preds = %8260
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8263 unwind label %1026

8263:                                             ; preds = %8262
  br label %8376

8264:                                             ; preds = %8258
  call void @llvm.lifetime.start.p0(i64 24, ptr %509) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %510) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %510, i32 noundef 24)
          to label %8265 unwind label %8286

8265:                                             ; preds = %8264
  %8266 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %510)
          to label %8267 unwind label %8290

8267:                                             ; preds = %8265
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %509, ptr noundef nonnull align 1 dereferenceable(1) %8266)
          to label %8268 unwind label %8290

8268:                                             ; preds = %8267
  %8269 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %8270 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8269, ptr noundef nonnull align 8 dereferenceable(24) %509)
          to label %8271 unwind label %8294

8271:                                             ; preds = %8268
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %509) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %510) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %510) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %509) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %511) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %511, i32 noundef 32)
          to label %8272 unwind label %8300

8272:                                             ; preds = %8271
  %8273 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %8274 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8273, ptr noundef nonnull align 8 dereferenceable(24) %511)
          to label %8275 unwind label %8304

8275:                                             ; preds = %8272
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %511) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %511) #5
  %8276 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 0)
          to label %8277 unwind label %1026

8277:                                             ; preds = %8275
  %8278 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %8276)
          to label %8279 unwind label %1026

8279:                                             ; preds = %8277
  %8280 = icmp ne i64 %8278, 0
  br i1 %8280, label %8281, label %8318

8281:                                             ; preds = %8279
  call void @llvm.lifetime.start.p0(i64 24, ptr %512) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %512, i32 noundef 128)
          to label %8282 unwind label %8309

8282:                                             ; preds = %8281
  %8283 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %8284 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8283, ptr noundef nonnull align 8 dereferenceable(24) %512)
          to label %8285 unwind label %8313

8285:                                             ; preds = %8282
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %512) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %512) #5
  br label %8332

8286:                                             ; preds = %8264
  %8287 = landingpad { ptr, i32 }
          cleanup
  %8288 = extractvalue { ptr, i32 } %8287, 0
  store ptr %8288, ptr %5, align 8
  %8289 = extractvalue { ptr, i32 } %8287, 1
  store i32 %8289, ptr %6, align 4
  br label %8299

8290:                                             ; preds = %8267, %8265
  %8291 = landingpad { ptr, i32 }
          cleanup
  %8292 = extractvalue { ptr, i32 } %8291, 0
  store ptr %8292, ptr %5, align 8
  %8293 = extractvalue { ptr, i32 } %8291, 1
  store i32 %8293, ptr %6, align 4
  br label %8298

8294:                                             ; preds = %8268
  %8295 = landingpad { ptr, i32 }
          cleanup
  %8296 = extractvalue { ptr, i32 } %8295, 0
  store ptr %8296, ptr %5, align 8
  %8297 = extractvalue { ptr, i32 } %8295, 1
  store i32 %8297, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %509) #5
  br label %8298

8298:                                             ; preds = %8294, %8290
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %510) #5
  br label %8299

8299:                                             ; preds = %8298, %8286
  call void @llvm.lifetime.end.p0(i64 24, ptr %510) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %509) #5
  br label %12015

8300:                                             ; preds = %8271
  %8301 = landingpad { ptr, i32 }
          cleanup
  %8302 = extractvalue { ptr, i32 } %8301, 0
  store ptr %8302, ptr %5, align 8
  %8303 = extractvalue { ptr, i32 } %8301, 1
  store i32 %8303, ptr %6, align 4
  br label %8308

8304:                                             ; preds = %8272
  %8305 = landingpad { ptr, i32 }
          cleanup
  %8306 = extractvalue { ptr, i32 } %8305, 0
  store ptr %8306, ptr %5, align 8
  %8307 = extractvalue { ptr, i32 } %8305, 1
  store i32 %8307, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %511) #5
  br label %8308

8308:                                             ; preds = %8304, %8300
  call void @llvm.lifetime.end.p0(i64 24, ptr %511) #5
  br label %12015

8309:                                             ; preds = %8281
  %8310 = landingpad { ptr, i32 }
          cleanup
  %8311 = extractvalue { ptr, i32 } %8310, 0
  store ptr %8311, ptr %5, align 8
  %8312 = extractvalue { ptr, i32 } %8310, 1
  store i32 %8312, ptr %6, align 4
  br label %8317

8313:                                             ; preds = %8282
  %8314 = landingpad { ptr, i32 }
          cleanup
  %8315 = extractvalue { ptr, i32 } %8314, 0
  store ptr %8315, ptr %5, align 8
  %8316 = extractvalue { ptr, i32 } %8314, 1
  store i32 %8316, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %512) #5
  br label %8317

8317:                                             ; preds = %8313, %8309
  call void @llvm.lifetime.end.p0(i64 24, ptr %512) #5
  br label %12015

8318:                                             ; preds = %8279
  call void @llvm.lifetime.start.p0(i64 24, ptr %513) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %513, i32 noundef 160)
          to label %8319 unwind label %8323

8319:                                             ; preds = %8318
  %8320 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %8321 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8320, ptr noundef nonnull align 8 dereferenceable(24) %513)
          to label %8322 unwind label %8327

8322:                                             ; preds = %8319
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %513) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %513) #5
  br label %8332

8323:                                             ; preds = %8318
  %8324 = landingpad { ptr, i32 }
          cleanup
  %8325 = extractvalue { ptr, i32 } %8324, 0
  store ptr %8325, ptr %5, align 8
  %8326 = extractvalue { ptr, i32 } %8324, 1
  store i32 %8326, ptr %6, align 4
  br label %8331

8327:                                             ; preds = %8319
  %8328 = landingpad { ptr, i32 }
          cleanup
  %8329 = extractvalue { ptr, i32 } %8328, 0
  store ptr %8329, ptr %5, align 8
  %8330 = extractvalue { ptr, i32 } %8328, 1
  store i32 %8330, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %513) #5
  br label %8331

8331:                                             ; preds = %8327, %8323
  call void @llvm.lifetime.end.p0(i64 24, ptr %513) #5
  br label %12015

8332:                                             ; preds = %8322, %8285
  call void @llvm.lifetime.start.p0(i64 24, ptr %514) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %514, i32 noundef 3)
          to label %8333 unwind label %8353

8333:                                             ; preds = %8332
  %8334 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %8335 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8334, ptr noundef nonnull align 8 dereferenceable(24) %514)
          to label %8336 unwind label %8357

8336:                                             ; preds = %8333
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %514) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %514) #5
  %8337 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %8338 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8337, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %8339 unwind label %1026

8339:                                             ; preds = %8336
  call void @llvm.lifetime.start.p0(i64 1, ptr %515) #5
  store i8 1, ptr %515, align 1, !tbaa !9
  %8340 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %8341 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8340, ptr noundef nonnull align 1 dereferenceable(1) %515)
          to label %8342 unwind label %8362

8342:                                             ; preds = %8339
  call void @llvm.lifetime.end.p0(i64 1, ptr %515) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8343 unwind label %1026

8343:                                             ; preds = %8342
  br label %8344

8344:                                             ; preds = %8352, %8343
  %8345 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %8346 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %8345)
          to label %8347 unwind label %1026

8347:                                             ; preds = %8344
  %8348 = load i8, ptr %8346, align 1, !tbaa !9, !range !11, !noundef !12
  %8349 = trunc i8 %8348 to i1
  %8350 = xor i1 %8349, true
  br i1 %8350, label %8351, label %8366

8351:                                             ; preds = %8347
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8352 unwind label %1026

8352:                                             ; preds = %8351
  br label %8344, !llvm.loop !112

8353:                                             ; preds = %8332
  %8354 = landingpad { ptr, i32 }
          cleanup
  %8355 = extractvalue { ptr, i32 } %8354, 0
  store ptr %8355, ptr %5, align 8
  %8356 = extractvalue { ptr, i32 } %8354, 1
  store i32 %8356, ptr %6, align 4
  br label %8361

8357:                                             ; preds = %8333
  %8358 = landingpad { ptr, i32 }
          cleanup
  %8359 = extractvalue { ptr, i32 } %8358, 0
  store ptr %8359, ptr %5, align 8
  %8360 = extractvalue { ptr, i32 } %8358, 1
  store i32 %8360, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %514) #5
  br label %8361

8361:                                             ; preds = %8357, %8353
  call void @llvm.lifetime.end.p0(i64 24, ptr %514) #5
  br label %12015

8362:                                             ; preds = %8339
  %8363 = landingpad { ptr, i32 }
          cleanup
  %8364 = extractvalue { ptr, i32 } %8363, 0
  store ptr %8364, ptr %5, align 8
  %8365 = extractvalue { ptr, i32 } %8363, 1
  store i32 %8365, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %515) #5
  br label %12015

8366:                                             ; preds = %8347
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8367 unwind label %1026

8367:                                             ; preds = %8366
  call void @llvm.lifetime.start.p0(i64 1, ptr %516) #5
  store i8 0, ptr %516, align 1, !tbaa !9
  %8368 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %8369 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8368, ptr noundef nonnull align 1 dereferenceable(1) %516)
          to label %8370 unwind label %8372

8370:                                             ; preds = %8367
  call void @llvm.lifetime.end.p0(i64 1, ptr %516) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8371 unwind label %1026

8371:                                             ; preds = %8370
  br label %8376

8372:                                             ; preds = %8367
  %8373 = landingpad { ptr, i32 }
          cleanup
  %8374 = extractvalue { ptr, i32 } %8373, 0
  store ptr %8374, ptr %5, align 8
  %8375 = extractvalue { ptr, i32 } %8373, 1
  store i32 %8375, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %516) #5
  br label %12015

8376:                                             ; preds = %8371, %8263
  br label %9265

8377:                                             ; preds = %7912
  %8378 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 7
  %8379 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %8378)
          to label %8380 unwind label %1026

8380:                                             ; preds = %8377
  %8381 = load i8, ptr %8379, align 1, !tbaa !9, !range !11, !noundef !12
  %8382 = trunc i8 %8381 to i1
  br i1 %8382, label %8387, label %8383

8383:                                             ; preds = %8380
  %8384 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %8385 unwind label %1026

8385:                                             ; preds = %8383
  %8386 = icmp ne i64 %8384, 12
  br i1 %8386, label %8397, label %8387

8387:                                             ; preds = %8385, %8380
  %8388 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 7
  %8389 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %8388)
          to label %8390 unwind label %1026

8390:                                             ; preds = %8387
  %8391 = load i8, ptr %8389, align 1, !tbaa !9, !range !11, !noundef !12
  %8392 = trunc i8 %8391 to i1
  br i1 %8392, label %8393, label %8401

8393:                                             ; preds = %8390
  %8394 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %8395 unwind label %1026

8395:                                             ; preds = %8393
  %8396 = icmp ne i64 %8394, 8
  br i1 %8396, label %8397, label %8401

8397:                                             ; preds = %8395, %8385
  %8398 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 2)
          to label %8399 unwind label %1026

8399:                                             ; preds = %8397
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8400 unwind label %1026

8400:                                             ; preds = %8399
  br label %8534

8401:                                             ; preds = %8395, %8390
  call void @llvm.lifetime.start.p0(i64 24, ptr %517) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %518) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %518, i32 noundef 24)
          to label %8402 unwind label %8419

8402:                                             ; preds = %8401
  %8403 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %518)
          to label %8404 unwind label %8423

8404:                                             ; preds = %8402
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %517, ptr noundef nonnull align 1 dereferenceable(1) %8403)
          to label %8405 unwind label %8423

8405:                                             ; preds = %8404
  %8406 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %8407 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8406, ptr noundef nonnull align 8 dereferenceable(24) %517)
          to label %8408 unwind label %8427

8408:                                             ; preds = %8405
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %517) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %518) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %518) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %517) #5
  %8409 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 7
  %8410 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %8409)
          to label %8411 unwind label %1026

8411:                                             ; preds = %8408
  %8412 = load i8, ptr %8410, align 1, !tbaa !9, !range !11, !noundef !12
  %8413 = trunc i8 %8412 to i1
  br i1 %8413, label %8442, label %8414

8414:                                             ; preds = %8411
  call void @llvm.lifetime.start.p0(i64 24, ptr %519) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %519, i32 noundef 6)
          to label %8415 unwind label %8433

8415:                                             ; preds = %8414
  %8416 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %8417 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8416, ptr noundef nonnull align 8 dereferenceable(24) %519)
          to label %8418 unwind label %8437

8418:                                             ; preds = %8415
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %519) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %519) #5
  br label %8456

8419:                                             ; preds = %8401
  %8420 = landingpad { ptr, i32 }
          cleanup
  %8421 = extractvalue { ptr, i32 } %8420, 0
  store ptr %8421, ptr %5, align 8
  %8422 = extractvalue { ptr, i32 } %8420, 1
  store i32 %8422, ptr %6, align 4
  br label %8432

8423:                                             ; preds = %8404, %8402
  %8424 = landingpad { ptr, i32 }
          cleanup
  %8425 = extractvalue { ptr, i32 } %8424, 0
  store ptr %8425, ptr %5, align 8
  %8426 = extractvalue { ptr, i32 } %8424, 1
  store i32 %8426, ptr %6, align 4
  br label %8431

8427:                                             ; preds = %8405
  %8428 = landingpad { ptr, i32 }
          cleanup
  %8429 = extractvalue { ptr, i32 } %8428, 0
  store ptr %8429, ptr %5, align 8
  %8430 = extractvalue { ptr, i32 } %8428, 1
  store i32 %8430, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %517) #5
  br label %8431

8431:                                             ; preds = %8427, %8423
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %518) #5
  br label %8432

8432:                                             ; preds = %8431, %8419
  call void @llvm.lifetime.end.p0(i64 24, ptr %518) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %517) #5
  br label %12015

8433:                                             ; preds = %8414
  %8434 = landingpad { ptr, i32 }
          cleanup
  %8435 = extractvalue { ptr, i32 } %8434, 0
  store ptr %8435, ptr %5, align 8
  %8436 = extractvalue { ptr, i32 } %8434, 1
  store i32 %8436, ptr %6, align 4
  br label %8441

8437:                                             ; preds = %8415
  %8438 = landingpad { ptr, i32 }
          cleanup
  %8439 = extractvalue { ptr, i32 } %8438, 0
  store ptr %8439, ptr %5, align 8
  %8440 = extractvalue { ptr, i32 } %8438, 1
  store i32 %8440, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %519) #5
  br label %8441

8441:                                             ; preds = %8437, %8433
  call void @llvm.lifetime.end.p0(i64 24, ptr %519) #5
  br label %12015

8442:                                             ; preds = %8411
  call void @llvm.lifetime.start.p0(i64 24, ptr %520) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %520, i32 noundef 4)
          to label %8443 unwind label %8447

8443:                                             ; preds = %8442
  %8444 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %8445 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8444, ptr noundef nonnull align 8 dereferenceable(24) %520)
          to label %8446 unwind label %8451

8446:                                             ; preds = %8443
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %520) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %520) #5
  br label %8456

8447:                                             ; preds = %8442
  %8448 = landingpad { ptr, i32 }
          cleanup
  %8449 = extractvalue { ptr, i32 } %8448, 0
  store ptr %8449, ptr %5, align 8
  %8450 = extractvalue { ptr, i32 } %8448, 1
  store i32 %8450, ptr %6, align 4
  br label %8455

8451:                                             ; preds = %8443
  %8452 = landingpad { ptr, i32 }
          cleanup
  %8453 = extractvalue { ptr, i32 } %8452, 0
  store ptr %8453, ptr %5, align 8
  %8454 = extractvalue { ptr, i32 } %8452, 1
  store i32 %8454, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %520) #5
  br label %8455

8455:                                             ; preds = %8451, %8447
  call void @llvm.lifetime.end.p0(i64 24, ptr %520) #5
  br label %12015

8456:                                             ; preds = %8446, %8418
  %8457 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 0)
          to label %8458 unwind label %1026

8458:                                             ; preds = %8456
  %8459 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %8457)
          to label %8460 unwind label %1026

8460:                                             ; preds = %8458
  %8461 = icmp ne i64 %8459, 0
  br i1 %8461, label %8462, label %8476

8462:                                             ; preds = %8460
  call void @llvm.lifetime.start.p0(i64 24, ptr %521) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %521, i32 noundef 32)
          to label %8463 unwind label %8467

8463:                                             ; preds = %8462
  %8464 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %8465 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8464, ptr noundef nonnull align 8 dereferenceable(24) %521)
          to label %8466 unwind label %8471

8466:                                             ; preds = %8463
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %521) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %521) #5
  br label %8490

8467:                                             ; preds = %8462
  %8468 = landingpad { ptr, i32 }
          cleanup
  %8469 = extractvalue { ptr, i32 } %8468, 0
  store ptr %8469, ptr %5, align 8
  %8470 = extractvalue { ptr, i32 } %8468, 1
  store i32 %8470, ptr %6, align 4
  br label %8475

8471:                                             ; preds = %8463
  %8472 = landingpad { ptr, i32 }
          cleanup
  %8473 = extractvalue { ptr, i32 } %8472, 0
  store ptr %8473, ptr %5, align 8
  %8474 = extractvalue { ptr, i32 } %8472, 1
  store i32 %8474, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %521) #5
  br label %8475

8475:                                             ; preds = %8471, %8467
  call void @llvm.lifetime.end.p0(i64 24, ptr %521) #5
  br label %12015

8476:                                             ; preds = %8460
  call void @llvm.lifetime.start.p0(i64 24, ptr %522) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %522, i32 noundef 48)
          to label %8477 unwind label %8481

8477:                                             ; preds = %8476
  %8478 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %8479 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8478, ptr noundef nonnull align 8 dereferenceable(24) %522)
          to label %8480 unwind label %8485

8480:                                             ; preds = %8477
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %522) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %522) #5
  br label %8490

8481:                                             ; preds = %8476
  %8482 = landingpad { ptr, i32 }
          cleanup
  %8483 = extractvalue { ptr, i32 } %8482, 0
  store ptr %8483, ptr %5, align 8
  %8484 = extractvalue { ptr, i32 } %8482, 1
  store i32 %8484, ptr %6, align 4
  br label %8489

8485:                                             ; preds = %8477
  %8486 = landingpad { ptr, i32 }
          cleanup
  %8487 = extractvalue { ptr, i32 } %8486, 0
  store ptr %8487, ptr %5, align 8
  %8488 = extractvalue { ptr, i32 } %8486, 1
  store i32 %8488, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %522) #5
  br label %8489

8489:                                             ; preds = %8485, %8481
  call void @llvm.lifetime.end.p0(i64 24, ptr %522) #5
  br label %12015

8490:                                             ; preds = %8480, %8466
  call void @llvm.lifetime.start.p0(i64 24, ptr %523) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %523, i32 noundef 3)
          to label %8491 unwind label %8511

8491:                                             ; preds = %8490
  %8492 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %8493 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8492, ptr noundef nonnull align 8 dereferenceable(24) %523)
          to label %8494 unwind label %8515

8494:                                             ; preds = %8491
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %523) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %523) #5
  %8495 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %8496 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8495, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %8497 unwind label %1026

8497:                                             ; preds = %8494
  call void @llvm.lifetime.start.p0(i64 1, ptr %524) #5
  store i8 1, ptr %524, align 1, !tbaa !9
  %8498 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %8499 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8498, ptr noundef nonnull align 1 dereferenceable(1) %524)
          to label %8500 unwind label %8520

8500:                                             ; preds = %8497
  call void @llvm.lifetime.end.p0(i64 1, ptr %524) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8501 unwind label %1026

8501:                                             ; preds = %8500
  br label %8502

8502:                                             ; preds = %8510, %8501
  %8503 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %8504 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %8503)
          to label %8505 unwind label %1026

8505:                                             ; preds = %8502
  %8506 = load i8, ptr %8504, align 1, !tbaa !9, !range !11, !noundef !12
  %8507 = trunc i8 %8506 to i1
  %8508 = xor i1 %8507, true
  br i1 %8508, label %8509, label %8524

8509:                                             ; preds = %8505
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8510 unwind label %1026

8510:                                             ; preds = %8509
  br label %8502, !llvm.loop !113

8511:                                             ; preds = %8490
  %8512 = landingpad { ptr, i32 }
          cleanup
  %8513 = extractvalue { ptr, i32 } %8512, 0
  store ptr %8513, ptr %5, align 8
  %8514 = extractvalue { ptr, i32 } %8512, 1
  store i32 %8514, ptr %6, align 4
  br label %8519

8515:                                             ; preds = %8491
  %8516 = landingpad { ptr, i32 }
          cleanup
  %8517 = extractvalue { ptr, i32 } %8516, 0
  store ptr %8517, ptr %5, align 8
  %8518 = extractvalue { ptr, i32 } %8516, 1
  store i32 %8518, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %523) #5
  br label %8519

8519:                                             ; preds = %8515, %8511
  call void @llvm.lifetime.end.p0(i64 24, ptr %523) #5
  br label %12015

8520:                                             ; preds = %8497
  %8521 = landingpad { ptr, i32 }
          cleanup
  %8522 = extractvalue { ptr, i32 } %8521, 0
  store ptr %8522, ptr %5, align 8
  %8523 = extractvalue { ptr, i32 } %8521, 1
  store i32 %8523, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %524) #5
  br label %12015

8524:                                             ; preds = %8505
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8525 unwind label %1026

8525:                                             ; preds = %8524
  call void @llvm.lifetime.start.p0(i64 1, ptr %525) #5
  store i8 0, ptr %525, align 1, !tbaa !9
  %8526 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %8527 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8526, ptr noundef nonnull align 1 dereferenceable(1) %525)
          to label %8528 unwind label %8530

8528:                                             ; preds = %8525
  call void @llvm.lifetime.end.p0(i64 1, ptr %525) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8529 unwind label %1026

8529:                                             ; preds = %8528
  br label %8534

8530:                                             ; preds = %8525
  %8531 = landingpad { ptr, i32 }
          cleanup
  %8532 = extractvalue { ptr, i32 } %8531, 0
  store ptr %8532, ptr %5, align 8
  %8533 = extractvalue { ptr, i32 } %8531, 1
  store i32 %8533, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %525) #5
  br label %12015

8534:                                             ; preds = %8529, %8400
  br label %9265

8535:                                             ; preds = %7912
  %8536 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %8537 unwind label %1026

8537:                                             ; preds = %8535
  %8538 = icmp ne i64 %8536, 2
  br i1 %8538, label %8539, label %8543

8539:                                             ; preds = %8537
  %8540 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 2)
          to label %8541 unwind label %1026

8541:                                             ; preds = %8539
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8542 unwind label %1026

8542:                                             ; preds = %8541
  br label %8632

8543:                                             ; preds = %8537
  call void @llvm.lifetime.start.p0(i64 24, ptr %526) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %526, i32 noundef 24)
          to label %8544 unwind label %8557

8544:                                             ; preds = %8543
  %8545 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %526)
          to label %8546 unwind label %8561

8546:                                             ; preds = %8544
  %8547 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %8545)
          to label %8548 unwind label %8561

8548:                                             ; preds = %8546
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %526) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %526) #5
  %8549 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 0)
          to label %8550 unwind label %1026

8550:                                             ; preds = %8548
  %8551 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %8549)
          to label %8552 unwind label %1026

8552:                                             ; preds = %8550
  %8553 = icmp ne i64 %8551, 0
  br i1 %8553, label %8554, label %8566

8554:                                             ; preds = %8552
  %8555 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 2)
          to label %8556 unwind label %1026

8556:                                             ; preds = %8554
  br label %8569

8557:                                             ; preds = %8543
  %8558 = landingpad { ptr, i32 }
          cleanup
  %8559 = extractvalue { ptr, i32 } %8558, 0
  store ptr %8559, ptr %5, align 8
  %8560 = extractvalue { ptr, i32 } %8558, 1
  store i32 %8560, ptr %6, align 4
  br label %8565

8561:                                             ; preds = %8546, %8544
  %8562 = landingpad { ptr, i32 }
          cleanup
  %8563 = extractvalue { ptr, i32 } %8562, 0
  store ptr %8563, ptr %5, align 8
  %8564 = extractvalue { ptr, i32 } %8562, 1
  store i32 %8564, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %526) #5
  br label %8565

8565:                                             ; preds = %8561, %8557
  call void @llvm.lifetime.end.p0(i64 24, ptr %526) #5
  br label %12015

8566:                                             ; preds = %8552
  %8567 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 4)
          to label %8568 unwind label %1026

8568:                                             ; preds = %8566
  br label %8569

8569:                                             ; preds = %8568, %8556
  %8570 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %8571 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8570, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %8572 unwind label %1026

8572:                                             ; preds = %8569
  %8573 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %8574 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8573, ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %8575 unwind label %1026

8575:                                             ; preds = %8572
  call void @llvm.lifetime.start.p0(i64 24, ptr %527) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %527, i32 noundef 1)
          to label %8576 unwind label %8600

8576:                                             ; preds = %8575
  %8577 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %8578 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8577, ptr noundef nonnull align 8 dereferenceable(24) %527)
          to label %8579 unwind label %8604

8579:                                             ; preds = %8576
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %527) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %527) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %528) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %528, i32 noundef 3)
          to label %8580 unwind label %8609

8580:                                             ; preds = %8579
  %8581 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %8582 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8581, ptr noundef nonnull align 8 dereferenceable(24) %528)
          to label %8583 unwind label %8613

8583:                                             ; preds = %8580
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %528) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %528) #5
  %8584 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %8585 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8584, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %8586 unwind label %1026

8586:                                             ; preds = %8583
  call void @llvm.lifetime.start.p0(i64 1, ptr %529) #5
  store i8 1, ptr %529, align 1, !tbaa !9
  %8587 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %8588 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8587, ptr noundef nonnull align 1 dereferenceable(1) %529)
          to label %8589 unwind label %8618

8589:                                             ; preds = %8586
  call void @llvm.lifetime.end.p0(i64 1, ptr %529) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8590 unwind label %1026

8590:                                             ; preds = %8589
  br label %8591

8591:                                             ; preds = %8599, %8590
  %8592 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %8593 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %8592)
          to label %8594 unwind label %1026

8594:                                             ; preds = %8591
  %8595 = load i8, ptr %8593, align 1, !tbaa !9, !range !11, !noundef !12
  %8596 = trunc i8 %8595 to i1
  %8597 = xor i1 %8596, true
  br i1 %8597, label %8598, label %8622

8598:                                             ; preds = %8594
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8599 unwind label %1026

8599:                                             ; preds = %8598
  br label %8591, !llvm.loop !114

8600:                                             ; preds = %8575
  %8601 = landingpad { ptr, i32 }
          cleanup
  %8602 = extractvalue { ptr, i32 } %8601, 0
  store ptr %8602, ptr %5, align 8
  %8603 = extractvalue { ptr, i32 } %8601, 1
  store i32 %8603, ptr %6, align 4
  br label %8608

8604:                                             ; preds = %8576
  %8605 = landingpad { ptr, i32 }
          cleanup
  %8606 = extractvalue { ptr, i32 } %8605, 0
  store ptr %8606, ptr %5, align 8
  %8607 = extractvalue { ptr, i32 } %8605, 1
  store i32 %8607, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %527) #5
  br label %8608

8608:                                             ; preds = %8604, %8600
  call void @llvm.lifetime.end.p0(i64 24, ptr %527) #5
  br label %12015

8609:                                             ; preds = %8579
  %8610 = landingpad { ptr, i32 }
          cleanup
  %8611 = extractvalue { ptr, i32 } %8610, 0
  store ptr %8611, ptr %5, align 8
  %8612 = extractvalue { ptr, i32 } %8610, 1
  store i32 %8612, ptr %6, align 4
  br label %8617

8613:                                             ; preds = %8580
  %8614 = landingpad { ptr, i32 }
          cleanup
  %8615 = extractvalue { ptr, i32 } %8614, 0
  store ptr %8615, ptr %5, align 8
  %8616 = extractvalue { ptr, i32 } %8614, 1
  store i32 %8616, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %528) #5
  br label %8617

8617:                                             ; preds = %8613, %8609
  call void @llvm.lifetime.end.p0(i64 24, ptr %528) #5
  br label %12015

8618:                                             ; preds = %8586
  %8619 = landingpad { ptr, i32 }
          cleanup
  %8620 = extractvalue { ptr, i32 } %8619, 0
  store ptr %8620, ptr %5, align 8
  %8621 = extractvalue { ptr, i32 } %8619, 1
  store i32 %8621, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %529) #5
  br label %12015

8622:                                             ; preds = %8594
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8623 unwind label %1026

8623:                                             ; preds = %8622
  call void @llvm.lifetime.start.p0(i64 1, ptr %530) #5
  store i8 0, ptr %530, align 1, !tbaa !9
  %8624 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %8625 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8624, ptr noundef nonnull align 1 dereferenceable(1) %530)
          to label %8626 unwind label %8628

8626:                                             ; preds = %8623
  call void @llvm.lifetime.end.p0(i64 1, ptr %530) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8627 unwind label %1026

8627:                                             ; preds = %8626
  br label %8632

8628:                                             ; preds = %8623
  %8629 = landingpad { ptr, i32 }
          cleanup
  %8630 = extractvalue { ptr, i32 } %8629, 0
  store ptr %8630, ptr %5, align 8
  %8631 = extractvalue { ptr, i32 } %8629, 1
  store i32 %8631, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %530) #5
  br label %12015

8632:                                             ; preds = %8627, %8542
  br label %9265

8633:                                             ; preds = %7912
  %8634 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %8635 unwind label %1026

8635:                                             ; preds = %8633
  %8636 = icmp ne i64 %8634, 8
  br i1 %8636, label %8637, label %8641

8637:                                             ; preds = %8635
  %8638 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 2)
          to label %8639 unwind label %1026

8639:                                             ; preds = %8637
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8640 unwind label %1026

8640:                                             ; preds = %8639
  br label %8732

8641:                                             ; preds = %8635
  call void @llvm.lifetime.start.p0(i64 24, ptr %531) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %532) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %532, i32 noundef 24)
          to label %8642 unwind label %8677

8642:                                             ; preds = %8641
  %8643 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %532)
          to label %8644 unwind label %8681

8644:                                             ; preds = %8642
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %531, ptr noundef nonnull align 1 dereferenceable(1) %8643)
          to label %8645 unwind label %8681

8645:                                             ; preds = %8644
  %8646 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %8647 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8646, ptr noundef nonnull align 8 dereferenceable(24) %531)
          to label %8648 unwind label %8685

8648:                                             ; preds = %8645
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %531) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %532) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %532) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %531) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %533) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %533, i32 noundef 20)
          to label %8649 unwind label %8691

8649:                                             ; preds = %8648
  %8650 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %8651 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8650, ptr noundef nonnull align 8 dereferenceable(24) %533)
          to label %8652 unwind label %8695

8652:                                             ; preds = %8649
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %533) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %533) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %534) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %534, i32 noundef 4)
          to label %8653 unwind label %8700

8653:                                             ; preds = %8652
  %8654 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %8655 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8654, ptr noundef nonnull align 8 dereferenceable(24) %534)
          to label %8656 unwind label %8704

8656:                                             ; preds = %8653
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %534) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %534) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %535) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %535, i32 noundef 3)
          to label %8657 unwind label %8709

8657:                                             ; preds = %8656
  %8658 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %8659 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8658, ptr noundef nonnull align 8 dereferenceable(24) %535)
          to label %8660 unwind label %8713

8660:                                             ; preds = %8657
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %535) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %535) #5
  %8661 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %8662 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8661, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %8663 unwind label %1026

8663:                                             ; preds = %8660
  call void @llvm.lifetime.start.p0(i64 1, ptr %536) #5
  store i8 1, ptr %536, align 1, !tbaa !9
  %8664 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %8665 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8664, ptr noundef nonnull align 1 dereferenceable(1) %536)
          to label %8666 unwind label %8718

8666:                                             ; preds = %8663
  call void @llvm.lifetime.end.p0(i64 1, ptr %536) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8667 unwind label %1026

8667:                                             ; preds = %8666
  br label %8668

8668:                                             ; preds = %8676, %8667
  %8669 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %8670 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %8669)
          to label %8671 unwind label %1026

8671:                                             ; preds = %8668
  %8672 = load i8, ptr %8670, align 1, !tbaa !9, !range !11, !noundef !12
  %8673 = trunc i8 %8672 to i1
  %8674 = xor i1 %8673, true
  br i1 %8674, label %8675, label %8722

8675:                                             ; preds = %8671
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8676 unwind label %1026

8676:                                             ; preds = %8675
  br label %8668, !llvm.loop !115

8677:                                             ; preds = %8641
  %8678 = landingpad { ptr, i32 }
          cleanup
  %8679 = extractvalue { ptr, i32 } %8678, 0
  store ptr %8679, ptr %5, align 8
  %8680 = extractvalue { ptr, i32 } %8678, 1
  store i32 %8680, ptr %6, align 4
  br label %8690

8681:                                             ; preds = %8644, %8642
  %8682 = landingpad { ptr, i32 }
          cleanup
  %8683 = extractvalue { ptr, i32 } %8682, 0
  store ptr %8683, ptr %5, align 8
  %8684 = extractvalue { ptr, i32 } %8682, 1
  store i32 %8684, ptr %6, align 4
  br label %8689

8685:                                             ; preds = %8645
  %8686 = landingpad { ptr, i32 }
          cleanup
  %8687 = extractvalue { ptr, i32 } %8686, 0
  store ptr %8687, ptr %5, align 8
  %8688 = extractvalue { ptr, i32 } %8686, 1
  store i32 %8688, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %531) #5
  br label %8689

8689:                                             ; preds = %8685, %8681
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %532) #5
  br label %8690

8690:                                             ; preds = %8689, %8677
  call void @llvm.lifetime.end.p0(i64 24, ptr %532) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %531) #5
  br label %12015

8691:                                             ; preds = %8648
  %8692 = landingpad { ptr, i32 }
          cleanup
  %8693 = extractvalue { ptr, i32 } %8692, 0
  store ptr %8693, ptr %5, align 8
  %8694 = extractvalue { ptr, i32 } %8692, 1
  store i32 %8694, ptr %6, align 4
  br label %8699

8695:                                             ; preds = %8649
  %8696 = landingpad { ptr, i32 }
          cleanup
  %8697 = extractvalue { ptr, i32 } %8696, 0
  store ptr %8697, ptr %5, align 8
  %8698 = extractvalue { ptr, i32 } %8696, 1
  store i32 %8698, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %533) #5
  br label %8699

8699:                                             ; preds = %8695, %8691
  call void @llvm.lifetime.end.p0(i64 24, ptr %533) #5
  br label %12015

8700:                                             ; preds = %8652
  %8701 = landingpad { ptr, i32 }
          cleanup
  %8702 = extractvalue { ptr, i32 } %8701, 0
  store ptr %8702, ptr %5, align 8
  %8703 = extractvalue { ptr, i32 } %8701, 1
  store i32 %8703, ptr %6, align 4
  br label %8708

8704:                                             ; preds = %8653
  %8705 = landingpad { ptr, i32 }
          cleanup
  %8706 = extractvalue { ptr, i32 } %8705, 0
  store ptr %8706, ptr %5, align 8
  %8707 = extractvalue { ptr, i32 } %8705, 1
  store i32 %8707, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %534) #5
  br label %8708

8708:                                             ; preds = %8704, %8700
  call void @llvm.lifetime.end.p0(i64 24, ptr %534) #5
  br label %12015

8709:                                             ; preds = %8656
  %8710 = landingpad { ptr, i32 }
          cleanup
  %8711 = extractvalue { ptr, i32 } %8710, 0
  store ptr %8711, ptr %5, align 8
  %8712 = extractvalue { ptr, i32 } %8710, 1
  store i32 %8712, ptr %6, align 4
  br label %8717

8713:                                             ; preds = %8657
  %8714 = landingpad { ptr, i32 }
          cleanup
  %8715 = extractvalue { ptr, i32 } %8714, 0
  store ptr %8715, ptr %5, align 8
  %8716 = extractvalue { ptr, i32 } %8714, 1
  store i32 %8716, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %535) #5
  br label %8717

8717:                                             ; preds = %8713, %8709
  call void @llvm.lifetime.end.p0(i64 24, ptr %535) #5
  br label %12015

8718:                                             ; preds = %8663
  %8719 = landingpad { ptr, i32 }
          cleanup
  %8720 = extractvalue { ptr, i32 } %8719, 0
  store ptr %8720, ptr %5, align 8
  %8721 = extractvalue { ptr, i32 } %8719, 1
  store i32 %8721, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %536) #5
  br label %12015

8722:                                             ; preds = %8671
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8723 unwind label %1026

8723:                                             ; preds = %8722
  call void @llvm.lifetime.start.p0(i64 1, ptr %537) #5
  store i8 0, ptr %537, align 1, !tbaa !9
  %8724 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %8725 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8724, ptr noundef nonnull align 1 dereferenceable(1) %537)
          to label %8726 unwind label %8728

8726:                                             ; preds = %8723
  call void @llvm.lifetime.end.p0(i64 1, ptr %537) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8727 unwind label %1026

8727:                                             ; preds = %8726
  br label %8732

8728:                                             ; preds = %8723
  %8729 = landingpad { ptr, i32 }
          cleanup
  %8730 = extractvalue { ptr, i32 } %8729, 0
  store ptr %8730, ptr %5, align 8
  %8731 = extractvalue { ptr, i32 } %8729, 1
  store i32 %8731, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %537) #5
  br label %12015

8732:                                             ; preds = %8727, %8640
  br label %9265

8733:                                             ; preds = %7912
  br label %8734

8734:                                             ; preds = %8733
  br label %8735

8735:                                             ; preds = %8734
  call void @llvm.lifetime.start.p0(i64 24, ptr %538) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %538, i32 noundef 11)
          to label %8736 unwind label %8771

8736:                                             ; preds = %8735
  %8737 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %538)
          to label %8738 unwind label %8775

8738:                                             ; preds = %8736
  %8739 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %8737)
          to label %8740 unwind label %8775

8740:                                             ; preds = %8738
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %538) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %538) #5
  %8741 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %8742 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8741, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %8743 unwind label %1026

8743:                                             ; preds = %8740
  %8744 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %8745 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8744, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %8746 unwind label %1026

8746:                                             ; preds = %8743
  call void @llvm.lifetime.start.p0(i64 1, ptr %539) #5
  store i8 1, ptr %539, align 1, !tbaa !9
  %8747 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %8748 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8747, ptr noundef nonnull align 1 dereferenceable(1) %539)
          to label %8749 unwind label %8780

8749:                                             ; preds = %8746
  call void @llvm.lifetime.end.p0(i64 1, ptr %539) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %540) #5
  store i8 1, ptr %540, align 1, !tbaa !9
  %8750 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %8751 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8750, ptr noundef nonnull align 1 dereferenceable(1) %540)
          to label %8752 unwind label %8784

8752:                                             ; preds = %8749
  call void @llvm.lifetime.end.p0(i64 1, ptr %540) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8753 unwind label %1026

8753:                                             ; preds = %8752
  br label %8754

8754:                                             ; preds = %8793, %8753
  br label %8755

8755:                                             ; preds = %8754
  %8756 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %8757 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %8756)
          to label %8758 unwind label %1026

8758:                                             ; preds = %8755
  %8759 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %8757)
          to label %8760 unwind label %1026

8760:                                             ; preds = %8758
  call void @llvm.lifetime.start.p0(i64 1, ptr %541) #5
  store i8 0, ptr %541, align 1, !tbaa !9
  %8761 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %8762 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8761, ptr noundef nonnull align 1 dereferenceable(1) %541)
          to label %8763 unwind label %8788

8763:                                             ; preds = %8760
  call void @llvm.lifetime.end.p0(i64 1, ptr %541) #5
  %8764 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %8765 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %8764)
          to label %8766 unwind label %1026

8766:                                             ; preds = %8763
  %8767 = load i8, ptr %8765, align 1, !tbaa !9, !range !11, !noundef !12
  %8768 = trunc i8 %8767 to i1
  br i1 %8768, label %8769, label %8792

8769:                                             ; preds = %8766
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8770 unwind label %1026

8770:                                             ; preds = %8769
  br label %8794

8771:                                             ; preds = %8735
  %8772 = landingpad { ptr, i32 }
          cleanup
  %8773 = extractvalue { ptr, i32 } %8772, 0
  store ptr %8773, ptr %5, align 8
  %8774 = extractvalue { ptr, i32 } %8772, 1
  store i32 %8774, ptr %6, align 4
  br label %8779

8775:                                             ; preds = %8738, %8736
  %8776 = landingpad { ptr, i32 }
          cleanup
  %8777 = extractvalue { ptr, i32 } %8776, 0
  store ptr %8777, ptr %5, align 8
  %8778 = extractvalue { ptr, i32 } %8776, 1
  store i32 %8778, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %538) #5
  br label %8779

8779:                                             ; preds = %8775, %8771
  call void @llvm.lifetime.end.p0(i64 24, ptr %538) #5
  br label %12015

8780:                                             ; preds = %8746
  %8781 = landingpad { ptr, i32 }
          cleanup
  %8782 = extractvalue { ptr, i32 } %8781, 0
  store ptr %8782, ptr %5, align 8
  %8783 = extractvalue { ptr, i32 } %8781, 1
  store i32 %8783, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %539) #5
  br label %12015

8784:                                             ; preds = %8749
  %8785 = landingpad { ptr, i32 }
          cleanup
  %8786 = extractvalue { ptr, i32 } %8785, 0
  store ptr %8786, ptr %5, align 8
  %8787 = extractvalue { ptr, i32 } %8785, 1
  store i32 %8787, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %540) #5
  br label %12015

8788:                                             ; preds = %8760
  %8789 = landingpad { ptr, i32 }
          cleanup
  %8790 = extractvalue { ptr, i32 } %8789, 0
  store ptr %8790, ptr %5, align 8
  %8791 = extractvalue { ptr, i32 } %8789, 1
  store i32 %8791, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %541) #5
  br label %12015

8792:                                             ; preds = %8766
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8793 unwind label %1026

8793:                                             ; preds = %8792
  br label %8754, !llvm.loop !116

8794:                                             ; preds = %8770
  %8795 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 13, i32 noundef 0)
          to label %8796 unwind label %1026

8796:                                             ; preds = %8794
  %8797 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %10, ptr noundef nonnull align 8 dereferenceable(28) %8795)
          to label %8798 unwind label %1026

8798:                                             ; preds = %8796
  call void @llvm.lifetime.start.p0(i64 24, ptr %542) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %542, i32 noundef 24)
          to label %8799 unwind label %8812

8799:                                             ; preds = %8798
  %8800 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %542)
          to label %8801 unwind label %8816

8801:                                             ; preds = %8799
  %8802 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %9, ptr noundef nonnull align 1 dereferenceable(1) %8800)
          to label %8803 unwind label %8816

8803:                                             ; preds = %8801
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %542) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %542) #5
  br label %8804

8804:                                             ; preds = %8803
  br label %8805

8805:                                             ; preds = %9100, %8934, %8804
  br label %8806

8806:                                             ; preds = %8805
  %8807 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %8808 unwind label %1026

8808:                                             ; preds = %8806
  %8809 = icmp sle i64 %8807, 1
  br i1 %8809, label %8810, label %8821

8810:                                             ; preds = %8808
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8811 unwind label %1026

8811:                                             ; preds = %8810
  br label %9101

8812:                                             ; preds = %8798
  %8813 = landingpad { ptr, i32 }
          cleanup
  %8814 = extractvalue { ptr, i32 } %8813, 0
  store ptr %8814, ptr %5, align 8
  %8815 = extractvalue { ptr, i32 } %8813, 1
  store i32 %8815, ptr %6, align 4
  br label %8820

8816:                                             ; preds = %8801, %8799
  %8817 = landingpad { ptr, i32 }
          cleanup
  %8818 = extractvalue { ptr, i32 } %8817, 0
  store ptr %8818, ptr %5, align 8
  %8819 = extractvalue { ptr, i32 } %8817, 1
  store i32 %8819, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %542) #5
  br label %8820

8820:                                             ; preds = %8816, %8812
  call void @llvm.lifetime.end.p0(i64 24, ptr %542) #5
  br label %12015

8821:                                             ; preds = %8808
  %8822 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %8823 unwind label %1026

8823:                                             ; preds = %8821
  %8824 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %8825 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8824, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %8826 unwind label %1026

8826:                                             ; preds = %8823
  %8827 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %8828 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8827, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %8829 unwind label %1026

8829:                                             ; preds = %8826
  call void @llvm.lifetime.start.p0(i64 1, ptr %543) #5
  store i8 1, ptr %543, align 1, !tbaa !9
  %8830 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %8831 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8830, ptr noundef nonnull align 1 dereferenceable(1) %543)
          to label %8832 unwind label %8854

8832:                                             ; preds = %8829
  call void @llvm.lifetime.end.p0(i64 1, ptr %543) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %544) #5
  store i8 1, ptr %544, align 1, !tbaa !9
  %8833 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %8834 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8833, ptr noundef nonnull align 1 dereferenceable(1) %544)
          to label %8835 unwind label %8858

8835:                                             ; preds = %8832
  call void @llvm.lifetime.end.p0(i64 1, ptr %544) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8836 unwind label %1026

8836:                                             ; preds = %8835
  br label %8837

8837:                                             ; preds = %8867, %8836
  br label %8838

8838:                                             ; preds = %8837
  %8839 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %8840 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %8839)
          to label %8841 unwind label %1026

8841:                                             ; preds = %8838
  %8842 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %8840)
          to label %8843 unwind label %1026

8843:                                             ; preds = %8841
  call void @llvm.lifetime.start.p0(i64 1, ptr %545) #5
  store i8 0, ptr %545, align 1, !tbaa !9
  %8844 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %8845 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8844, ptr noundef nonnull align 1 dereferenceable(1) %545)
          to label %8846 unwind label %8862

8846:                                             ; preds = %8843
  call void @llvm.lifetime.end.p0(i64 1, ptr %545) #5
  %8847 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %8848 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %8847)
          to label %8849 unwind label %1026

8849:                                             ; preds = %8846
  %8850 = load i8, ptr %8848, align 1, !tbaa !9, !range !11, !noundef !12
  %8851 = trunc i8 %8850 to i1
  br i1 %8851, label %8852, label %8866

8852:                                             ; preds = %8849
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8853 unwind label %1026

8853:                                             ; preds = %8852
  br label %8868

8854:                                             ; preds = %8829
  %8855 = landingpad { ptr, i32 }
          cleanup
  %8856 = extractvalue { ptr, i32 } %8855, 0
  store ptr %8856, ptr %5, align 8
  %8857 = extractvalue { ptr, i32 } %8855, 1
  store i32 %8857, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %543) #5
  br label %12015

8858:                                             ; preds = %8832
  %8859 = landingpad { ptr, i32 }
          cleanup
  %8860 = extractvalue { ptr, i32 } %8859, 0
  store ptr %8860, ptr %5, align 8
  %8861 = extractvalue { ptr, i32 } %8859, 1
  store i32 %8861, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %544) #5
  br label %12015

8862:                                             ; preds = %8843
  %8863 = landingpad { ptr, i32 }
          cleanup
  %8864 = extractvalue { ptr, i32 } %8863, 0
  store ptr %8864, ptr %5, align 8
  %8865 = extractvalue { ptr, i32 } %8863, 1
  store i32 %8865, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %545) #5
  br label %12015

8866:                                             ; preds = %8849
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8867 unwind label %1026

8867:                                             ; preds = %8866
  br label %8837, !llvm.loop !117

8868:                                             ; preds = %8853
  %8869 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 8 dereferenceable(24) %10)
          to label %8870 unwind label %1026

8870:                                             ; preds = %8868
  %8871 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %4)
          to label %8872 unwind label %1026

8872:                                             ; preds = %8870
  %8873 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %8874 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8873, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %8875 unwind label %1026

8875:                                             ; preds = %8872
  %8876 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %8877 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8876, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %8878 unwind label %1026

8878:                                             ; preds = %8875
  call void @llvm.lifetime.start.p0(i64 1, ptr %546) #5
  store i8 0, ptr %546, align 1, !tbaa !9
  %8879 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %8880 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8879, ptr noundef nonnull align 1 dereferenceable(1) %546)
          to label %8881 unwind label %8898

8881:                                             ; preds = %8878
  call void @llvm.lifetime.end.p0(i64 1, ptr %546) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %547) #5
  store i8 1, ptr %547, align 1, !tbaa !9
  %8882 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %8883 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8882, ptr noundef nonnull align 1 dereferenceable(1) %547)
          to label %8884 unwind label %8902

8884:                                             ; preds = %8881
  call void @llvm.lifetime.end.p0(i64 1, ptr %547) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8885 unwind label %1026

8885:                                             ; preds = %8884
  br label %8886

8886:                                             ; preds = %8911, %8885
  br label %8887

8887:                                             ; preds = %8886
  call void @llvm.lifetime.start.p0(i64 1, ptr %548) #5
  store i8 0, ptr %548, align 1, !tbaa !9
  %8888 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %8889 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8888, ptr noundef nonnull align 1 dereferenceable(1) %548)
          to label %8890 unwind label %8906

8890:                                             ; preds = %8887
  call void @llvm.lifetime.end.p0(i64 1, ptr %548) #5
  %8891 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %8892 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %8891)
          to label %8893 unwind label %1026

8893:                                             ; preds = %8890
  %8894 = load i8, ptr %8892, align 1, !tbaa !9, !range !11, !noundef !12
  %8895 = trunc i8 %8894 to i1
  br i1 %8895, label %8896, label %8910

8896:                                             ; preds = %8893
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8897 unwind label %1026

8897:                                             ; preds = %8896
  br label %8912

8898:                                             ; preds = %8878
  %8899 = landingpad { ptr, i32 }
          cleanup
  %8900 = extractvalue { ptr, i32 } %8899, 0
  store ptr %8900, ptr %5, align 8
  %8901 = extractvalue { ptr, i32 } %8899, 1
  store i32 %8901, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %546) #5
  br label %12015

8902:                                             ; preds = %8881
  %8903 = landingpad { ptr, i32 }
          cleanup
  %8904 = extractvalue { ptr, i32 } %8903, 0
  store ptr %8904, ptr %5, align 8
  %8905 = extractvalue { ptr, i32 } %8903, 1
  store i32 %8905, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %547) #5
  br label %12015

8906:                                             ; preds = %8887
  %8907 = landingpad { ptr, i32 }
          cleanup
  %8908 = extractvalue { ptr, i32 } %8907, 0
  store ptr %8908, ptr %5, align 8
  %8909 = extractvalue { ptr, i32 } %8907, 1
  store i32 %8909, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %548) #5
  br label %12015

8910:                                             ; preds = %8893
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8911 unwind label %1026

8911:                                             ; preds = %8910
  br label %8886, !llvm.loop !118

8912:                                             ; preds = %8897
  %8913 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %8914 unwind label %1026

8914:                                             ; preds = %8912
  %8915 = add nsw i64 %8913, 1
  %8916 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %9, i64 noundef %8915)
          to label %8917 unwind label %1026

8917:                                             ; preds = %8914
  %8918 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %10)
          to label %8919 unwind label %1026

8919:                                             ; preds = %8917
  %8920 = add nsw i64 %8918, 1
  %8921 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %10, i64 noundef %8920)
          to label %8922 unwind label %1026

8922:                                             ; preds = %8919
  %8923 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %8924 unwind label %1026

8924:                                             ; preds = %8922
  %8925 = sub nsw i64 %8923, 2
  %8926 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %26, i64 noundef %8925)
          to label %8927 unwind label %1026

8927:                                             ; preds = %8924
  call void @llvm.lifetime.start.p0(i64 24, ptr %549) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %549, i32 noundef -1)
          to label %8928 unwind label %8935

8928:                                             ; preds = %8927
  %8929 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %549)
          to label %8930 unwind label %8939

8930:                                             ; preds = %8928
  %8931 = invoke noundef zeroext i1 @_ZN5sc_dtleERKNS_11sc_int_baseERKNS_12sc_concatrefE(ptr noundef nonnull align 8 dereferenceable(24) %9, ptr noundef nonnull align 8 dereferenceable(36) %8929)
          to label %8932 unwind label %8939

8932:                                             ; preds = %8930
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %549) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %549) #5
  br i1 %8931, label %8933, label %8944

8933:                                             ; preds = %8932
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8934 unwind label %1026

8934:                                             ; preds = %8933
  br label %8805, !llvm.loop !119

8935:                                             ; preds = %8927
  %8936 = landingpad { ptr, i32 }
          cleanup
  %8937 = extractvalue { ptr, i32 } %8936, 0
  store ptr %8937, ptr %5, align 8
  %8938 = extractvalue { ptr, i32 } %8936, 1
  store i32 %8938, ptr %6, align 4
  br label %8943

8939:                                             ; preds = %8930, %8928
  %8940 = landingpad { ptr, i32 }
          cleanup
  %8941 = extractvalue { ptr, i32 } %8940, 0
  store ptr %8941, ptr %5, align 8
  %8942 = extractvalue { ptr, i32 } %8940, 1
  store i32 %8942, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %549) #5
  br label %8943

8943:                                             ; preds = %8939, %8935
  call void @llvm.lifetime.end.p0(i64 24, ptr %549) #5
  br label %12015

8944:                                             ; preds = %8932
  call void @llvm.lifetime.start.p0(i64 24, ptr %550) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %550, i32 noundef 2)
          to label %8945 unwind label %8980

8945:                                             ; preds = %8944
  %8946 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %550)
          to label %8947 unwind label %8984

8947:                                             ; preds = %8945
  %8948 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %8946)
          to label %8949 unwind label %8984

8949:                                             ; preds = %8947
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %550) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %550) #5
  %8950 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %8951 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8950, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %8952 unwind label %1026

8952:                                             ; preds = %8949
  %8953 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %8954 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %8953, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %8955 unwind label %1026

8955:                                             ; preds = %8952
  call void @llvm.lifetime.start.p0(i64 1, ptr %551) #5
  store i8 1, ptr %551, align 1, !tbaa !9
  %8956 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %8957 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8956, ptr noundef nonnull align 1 dereferenceable(1) %551)
          to label %8958 unwind label %8989

8958:                                             ; preds = %8955
  call void @llvm.lifetime.end.p0(i64 1, ptr %551) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %552) #5
  store i8 1, ptr %552, align 1, !tbaa !9
  %8959 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %8960 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8959, ptr noundef nonnull align 1 dereferenceable(1) %552)
          to label %8961 unwind label %8993

8961:                                             ; preds = %8958
  call void @llvm.lifetime.end.p0(i64 1, ptr %552) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8962 unwind label %1026

8962:                                             ; preds = %8961
  br label %8963

8963:                                             ; preds = %9002, %8962
  br label %8964

8964:                                             ; preds = %8963
  %8965 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %8966 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %8965)
          to label %8967 unwind label %1026

8967:                                             ; preds = %8964
  %8968 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %8966)
          to label %8969 unwind label %1026

8969:                                             ; preds = %8967
  call void @llvm.lifetime.start.p0(i64 1, ptr %553) #5
  store i8 0, ptr %553, align 1, !tbaa !9
  %8970 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %8971 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %8970, ptr noundef nonnull align 1 dereferenceable(1) %553)
          to label %8972 unwind label %8997

8972:                                             ; preds = %8969
  call void @llvm.lifetime.end.p0(i64 1, ptr %553) #5
  %8973 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %8974 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %8973)
          to label %8975 unwind label %1026

8975:                                             ; preds = %8972
  %8976 = load i8, ptr %8974, align 1, !tbaa !9, !range !11, !noundef !12
  %8977 = trunc i8 %8976 to i1
  br i1 %8977, label %8978, label %9001

8978:                                             ; preds = %8975
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %8979 unwind label %1026

8979:                                             ; preds = %8978
  br label %9003

8980:                                             ; preds = %8944
  %8981 = landingpad { ptr, i32 }
          cleanup
  %8982 = extractvalue { ptr, i32 } %8981, 0
  store ptr %8982, ptr %5, align 8
  %8983 = extractvalue { ptr, i32 } %8981, 1
  store i32 %8983, ptr %6, align 4
  br label %8988

8984:                                             ; preds = %8947, %8945
  %8985 = landingpad { ptr, i32 }
          cleanup
  %8986 = extractvalue { ptr, i32 } %8985, 0
  store ptr %8986, ptr %5, align 8
  %8987 = extractvalue { ptr, i32 } %8985, 1
  store i32 %8987, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %550) #5
  br label %8988

8988:                                             ; preds = %8984, %8980
  call void @llvm.lifetime.end.p0(i64 24, ptr %550) #5
  br label %12015

8989:                                             ; preds = %8955
  %8990 = landingpad { ptr, i32 }
          cleanup
  %8991 = extractvalue { ptr, i32 } %8990, 0
  store ptr %8991, ptr %5, align 8
  %8992 = extractvalue { ptr, i32 } %8990, 1
  store i32 %8992, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %551) #5
  br label %12015

8993:                                             ; preds = %8958
  %8994 = landingpad { ptr, i32 }
          cleanup
  %8995 = extractvalue { ptr, i32 } %8994, 0
  store ptr %8995, ptr %5, align 8
  %8996 = extractvalue { ptr, i32 } %8994, 1
  store i32 %8996, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %552) #5
  br label %12015

8997:                                             ; preds = %8969
  %8998 = landingpad { ptr, i32 }
          cleanup
  %8999 = extractvalue { ptr, i32 } %8998, 0
  store ptr %8999, ptr %5, align 8
  %9000 = extractvalue { ptr, i32 } %8998, 1
  store i32 %9000, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %553) #5
  br label %12015

9001:                                             ; preds = %8975
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9002 unwind label %1026

9002:                                             ; preds = %9001
  br label %8963, !llvm.loop !120

9003:                                             ; preds = %8979
  call void @llvm.lifetime.start.p0(i64 24, ptr %554) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %554, i32 noundef 0)
          to label %9004 unwind label %9038

9004:                                             ; preds = %9003
  %9005 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %554, ptr noundef nonnull align 8 dereferenceable(8) %27)
          to label %9006 unwind label %9042

9006:                                             ; preds = %9004
  call void @llvm.lifetime.start.p0(i64 24, ptr %555) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %555, i32 noundef 0)
          to label %9007 unwind label %9046

9007:                                             ; preds = %9006
  %9008 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %9005, ptr noundef nonnull align 8 dereferenceable(8) %555)
          to label %9009 unwind label %9050

9009:                                             ; preds = %9007
  %9010 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 1 dereferenceable(1) %9008)
          to label %9011 unwind label %9050

9011:                                             ; preds = %9009
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %555) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %555) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %554) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %554) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %556) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %556, i32 noundef -8192)
          to label %9012 unwind label %9057

9012:                                             ; preds = %9011
  %9013 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %9014 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9013, ptr noundef nonnull align 8 dereferenceable(24) %556)
          to label %9015 unwind label %9061

9015:                                             ; preds = %9012
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %556) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %556) #5
  %9016 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %9017 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9016, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %9018 unwind label %1026

9018:                                             ; preds = %9015
  call void @llvm.lifetime.start.p0(i64 1, ptr %557) #5
  store i8 0, ptr %557, align 1, !tbaa !9
  %9019 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %9020 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9019, ptr noundef nonnull align 1 dereferenceable(1) %557)
          to label %9021 unwind label %9066

9021:                                             ; preds = %9018
  call void @llvm.lifetime.end.p0(i64 1, ptr %557) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %558) #5
  store i8 1, ptr %558, align 1, !tbaa !9
  %9022 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %9023 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9022, ptr noundef nonnull align 1 dereferenceable(1) %558)
          to label %9024 unwind label %9070

9024:                                             ; preds = %9021
  call void @llvm.lifetime.end.p0(i64 1, ptr %558) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9025 unwind label %1026

9025:                                             ; preds = %9024
  br label %9026

9026:                                             ; preds = %9079, %9025
  br label %9027

9027:                                             ; preds = %9026
  call void @llvm.lifetime.start.p0(i64 1, ptr %559) #5
  store i8 0, ptr %559, align 1, !tbaa !9
  %9028 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %9029 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9028, ptr noundef nonnull align 1 dereferenceable(1) %559)
          to label %9030 unwind label %9074

9030:                                             ; preds = %9027
  call void @llvm.lifetime.end.p0(i64 1, ptr %559) #5
  %9031 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %9032 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %9031)
          to label %9033 unwind label %1026

9033:                                             ; preds = %9030
  %9034 = load i8, ptr %9032, align 1, !tbaa !9, !range !11, !noundef !12
  %9035 = trunc i8 %9034 to i1
  br i1 %9035, label %9036, label %9078

9036:                                             ; preds = %9033
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9037 unwind label %1026

9037:                                             ; preds = %9036
  br label %9080

9038:                                             ; preds = %9003
  %9039 = landingpad { ptr, i32 }
          cleanup
  %9040 = extractvalue { ptr, i32 } %9039, 0
  store ptr %9040, ptr %5, align 8
  %9041 = extractvalue { ptr, i32 } %9039, 1
  store i32 %9041, ptr %6, align 4
  br label %9056

9042:                                             ; preds = %9004
  %9043 = landingpad { ptr, i32 }
          cleanup
  %9044 = extractvalue { ptr, i32 } %9043, 0
  store ptr %9044, ptr %5, align 8
  %9045 = extractvalue { ptr, i32 } %9043, 1
  store i32 %9045, ptr %6, align 4
  br label %9055

9046:                                             ; preds = %9006
  %9047 = landingpad { ptr, i32 }
          cleanup
  %9048 = extractvalue { ptr, i32 } %9047, 0
  store ptr %9048, ptr %5, align 8
  %9049 = extractvalue { ptr, i32 } %9047, 1
  store i32 %9049, ptr %6, align 4
  br label %9054

9050:                                             ; preds = %9009, %9007
  %9051 = landingpad { ptr, i32 }
          cleanup
  %9052 = extractvalue { ptr, i32 } %9051, 0
  store ptr %9052, ptr %5, align 8
  %9053 = extractvalue { ptr, i32 } %9051, 1
  store i32 %9053, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %555) #5
  br label %9054

9054:                                             ; preds = %9050, %9046
  call void @llvm.lifetime.end.p0(i64 24, ptr %555) #5
  br label %9055

9055:                                             ; preds = %9054, %9042
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %554) #5
  br label %9056

9056:                                             ; preds = %9055, %9038
  call void @llvm.lifetime.end.p0(i64 24, ptr %554) #5
  br label %12015

9057:                                             ; preds = %9011
  %9058 = landingpad { ptr, i32 }
          cleanup
  %9059 = extractvalue { ptr, i32 } %9058, 0
  store ptr %9059, ptr %5, align 8
  %9060 = extractvalue { ptr, i32 } %9058, 1
  store i32 %9060, ptr %6, align 4
  br label %9065

9061:                                             ; preds = %9012
  %9062 = landingpad { ptr, i32 }
          cleanup
  %9063 = extractvalue { ptr, i32 } %9062, 0
  store ptr %9063, ptr %5, align 8
  %9064 = extractvalue { ptr, i32 } %9062, 1
  store i32 %9064, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %556) #5
  br label %9065

9065:                                             ; preds = %9061, %9057
  call void @llvm.lifetime.end.p0(i64 24, ptr %556) #5
  br label %12015

9066:                                             ; preds = %9018
  %9067 = landingpad { ptr, i32 }
          cleanup
  %9068 = extractvalue { ptr, i32 } %9067, 0
  store ptr %9068, ptr %5, align 8
  %9069 = extractvalue { ptr, i32 } %9067, 1
  store i32 %9069, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %557) #5
  br label %12015

9070:                                             ; preds = %9021
  %9071 = landingpad { ptr, i32 }
          cleanup
  %9072 = extractvalue { ptr, i32 } %9071, 0
  store ptr %9072, ptr %5, align 8
  %9073 = extractvalue { ptr, i32 } %9071, 1
  store i32 %9073, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %558) #5
  br label %12015

9074:                                             ; preds = %9027
  %9075 = landingpad { ptr, i32 }
          cleanup
  %9076 = extractvalue { ptr, i32 } %9075, 0
  store ptr %9076, ptr %5, align 8
  %9077 = extractvalue { ptr, i32 } %9075, 1
  store i32 %9077, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %559) #5
  br label %12015

9078:                                             ; preds = %9033
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9079 unwind label %1026

9079:                                             ; preds = %9078
  br label %9026, !llvm.loop !121

9080:                                             ; preds = %9037
  %9081 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 13, i32 noundef 7)
          to label %9082 unwind label %1026

9082:                                             ; preds = %9080
  %9083 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %27, ptr noundef nonnull align 8 dereferenceable(28) %9081)
          to label %9084 unwind label %1026

9084:                                             ; preds = %9082
  call void @llvm.lifetime.start.p0(i64 24, ptr %560) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %560, i32 noundef 8)
          to label %9085 unwind label %9090

9085:                                             ; preds = %9084
  %9086 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %560)
          to label %9087 unwind label %9094

9087:                                             ; preds = %9085
  %9088 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %9, ptr noundef nonnull align 1 dereferenceable(1) %9086)
          to label %9089 unwind label %9094

9089:                                             ; preds = %9087
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %560) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %560) #5
  br label %9099

9090:                                             ; preds = %9084
  %9091 = landingpad { ptr, i32 }
          cleanup
  %9092 = extractvalue { ptr, i32 } %9091, 0
  store ptr %9092, ptr %5, align 8
  %9093 = extractvalue { ptr, i32 } %9091, 1
  store i32 %9093, ptr %6, align 4
  br label %9098

9094:                                             ; preds = %9087, %9085
  %9095 = landingpad { ptr, i32 }
          cleanup
  %9096 = extractvalue { ptr, i32 } %9095, 0
  store ptr %9096, ptr %5, align 8
  %9097 = extractvalue { ptr, i32 } %9095, 1
  store i32 %9097, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %560) #5
  br label %9098

9098:                                             ; preds = %9094, %9090
  call void @llvm.lifetime.end.p0(i64 24, ptr %560) #5
  br label %12015

9099:                                             ; preds = %9089
  br label %9100

9100:                                             ; preds = %9099
  br label %8805, !llvm.loop !119

9101:                                             ; preds = %8811
  %9102 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %26, i32 noundef 0)
          to label %9103 unwind label %1026

9103:                                             ; preds = %9101
  %9104 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %9102)
          to label %9105 unwind label %1026

9105:                                             ; preds = %9103
  br i1 %9104, label %9106, label %9108

9106:                                             ; preds = %9105
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9107 unwind label %1026

9107:                                             ; preds = %9106
  br label %9260

9108:                                             ; preds = %9105
  %9109 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %9110 unwind label %1026

9110:                                             ; preds = %9108
  %9111 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %9112 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9111, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %9113 unwind label %1026

9113:                                             ; preds = %9110
  %9114 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %9115 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9114, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %9116 unwind label %1026

9116:                                             ; preds = %9113
  call void @llvm.lifetime.start.p0(i64 1, ptr %561) #5
  store i8 1, ptr %561, align 1, !tbaa !9
  %9117 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %9118 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9117, ptr noundef nonnull align 1 dereferenceable(1) %561)
          to label %9119 unwind label %9141

9119:                                             ; preds = %9116
  call void @llvm.lifetime.end.p0(i64 1, ptr %561) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %562) #5
  store i8 1, ptr %562, align 1, !tbaa !9
  %9120 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %9121 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9120, ptr noundef nonnull align 1 dereferenceable(1) %562)
          to label %9122 unwind label %9145

9122:                                             ; preds = %9119
  call void @llvm.lifetime.end.p0(i64 1, ptr %562) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9123 unwind label %1026

9123:                                             ; preds = %9122
  br label %9124

9124:                                             ; preds = %9154, %9123
  br label %9125

9125:                                             ; preds = %9124
  %9126 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %9127 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %9126)
          to label %9128 unwind label %1026

9128:                                             ; preds = %9125
  %9129 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %9127)
          to label %9130 unwind label %1026

9130:                                             ; preds = %9128
  call void @llvm.lifetime.start.p0(i64 1, ptr %563) #5
  store i8 0, ptr %563, align 1, !tbaa !9
  %9131 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %9132 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9131, ptr noundef nonnull align 1 dereferenceable(1) %563)
          to label %9133 unwind label %9149

9133:                                             ; preds = %9130
  call void @llvm.lifetime.end.p0(i64 1, ptr %563) #5
  %9134 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %9135 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %9134)
          to label %9136 unwind label %1026

9136:                                             ; preds = %9133
  %9137 = load i8, ptr %9135, align 1, !tbaa !9, !range !11, !noundef !12
  %9138 = trunc i8 %9137 to i1
  br i1 %9138, label %9139, label %9153

9139:                                             ; preds = %9136
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9140 unwind label %1026

9140:                                             ; preds = %9139
  br label %9155

9141:                                             ; preds = %9116
  %9142 = landingpad { ptr, i32 }
          cleanup
  %9143 = extractvalue { ptr, i32 } %9142, 0
  store ptr %9143, ptr %5, align 8
  %9144 = extractvalue { ptr, i32 } %9142, 1
  store i32 %9144, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %561) #5
  br label %12015

9145:                                             ; preds = %9119
  %9146 = landingpad { ptr, i32 }
          cleanup
  %9147 = extractvalue { ptr, i32 } %9146, 0
  store ptr %9147, ptr %5, align 8
  %9148 = extractvalue { ptr, i32 } %9146, 1
  store i32 %9148, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %562) #5
  br label %12015

9149:                                             ; preds = %9130
  %9150 = landingpad { ptr, i32 }
          cleanup
  %9151 = extractvalue { ptr, i32 } %9150, 0
  store ptr %9151, ptr %5, align 8
  %9152 = extractvalue { ptr, i32 } %9150, 1
  store i32 %9152, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %563) #5
  br label %12015

9153:                                             ; preds = %9136
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9154 unwind label %1026

9154:                                             ; preds = %9153
  br label %9124, !llvm.loop !122

9155:                                             ; preds = %9140
  %9156 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 7, i32 noundef 0)
          to label %9157 unwind label %1026

9157:                                             ; preds = %9155
  %9158 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 7, i32 noundef 0)
          to label %9159 unwind label %1026

9159:                                             ; preds = %9157
  %9160 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt13sc_int_subrefaSERKS0_(ptr noundef nonnull align 8 dereferenceable(28) %9158, ptr noundef nonnull align 8 dereferenceable(28) %9156)
          to label %9161 unwind label %1026

9161:                                             ; preds = %9159
  %9162 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 8 dereferenceable(24) %10)
          to label %9163 unwind label %1026

9163:                                             ; preds = %9161
  %9164 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %9165 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9164, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %9166 unwind label %1026

9166:                                             ; preds = %9163
  %9167 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %9168 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9167, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %9169 unwind label %1026

9169:                                             ; preds = %9166
  call void @llvm.lifetime.start.p0(i64 1, ptr %564) #5
  store i8 1, ptr %564, align 1, !tbaa !9
  %9170 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %9171 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9170, ptr noundef nonnull align 1 dereferenceable(1) %564)
          to label %9172 unwind label %9194

9172:                                             ; preds = %9169
  call void @llvm.lifetime.end.p0(i64 1, ptr %564) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %565) #5
  store i8 1, ptr %565, align 1, !tbaa !9
  %9173 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %9174 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9173, ptr noundef nonnull align 1 dereferenceable(1) %565)
          to label %9175 unwind label %9198

9175:                                             ; preds = %9172
  call void @llvm.lifetime.end.p0(i64 1, ptr %565) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9176 unwind label %1026

9176:                                             ; preds = %9175
  br label %9177

9177:                                             ; preds = %9207, %9176
  br label %9178

9178:                                             ; preds = %9177
  %9179 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %9180 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %9179)
          to label %9181 unwind label %1026

9181:                                             ; preds = %9178
  %9182 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %9180)
          to label %9183 unwind label %1026

9183:                                             ; preds = %9181
  call void @llvm.lifetime.start.p0(i64 1, ptr %566) #5
  store i8 0, ptr %566, align 1, !tbaa !9
  %9184 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %9185 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9184, ptr noundef nonnull align 1 dereferenceable(1) %566)
          to label %9186 unwind label %9202

9186:                                             ; preds = %9183
  call void @llvm.lifetime.end.p0(i64 1, ptr %566) #5
  %9187 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %9188 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %9187)
          to label %9189 unwind label %1026

9189:                                             ; preds = %9186
  %9190 = load i8, ptr %9188, align 1, !tbaa !9, !range !11, !noundef !12
  %9191 = trunc i8 %9190 to i1
  br i1 %9191, label %9192, label %9206

9192:                                             ; preds = %9189
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9193 unwind label %1026

9193:                                             ; preds = %9192
  br label %9208

9194:                                             ; preds = %9169
  %9195 = landingpad { ptr, i32 }
          cleanup
  %9196 = extractvalue { ptr, i32 } %9195, 0
  store ptr %9196, ptr %5, align 8
  %9197 = extractvalue { ptr, i32 } %9195, 1
  store i32 %9197, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %564) #5
  br label %12015

9198:                                             ; preds = %9172
  %9199 = landingpad { ptr, i32 }
          cleanup
  %9200 = extractvalue { ptr, i32 } %9199, 0
  store ptr %9200, ptr %5, align 8
  %9201 = extractvalue { ptr, i32 } %9199, 1
  store i32 %9201, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %565) #5
  br label %12015

9202:                                             ; preds = %9183
  %9203 = landingpad { ptr, i32 }
          cleanup
  %9204 = extractvalue { ptr, i32 } %9203, 0
  store ptr %9204, ptr %5, align 8
  %9205 = extractvalue { ptr, i32 } %9203, 1
  store i32 %9205, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %566) #5
  br label %12015

9206:                                             ; preds = %9189
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9207 unwind label %1026

9207:                                             ; preds = %9206
  br label %9177, !llvm.loop !123

9208:                                             ; preds = %9193
  %9209 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 15, i32 noundef 8)
          to label %9210 unwind label %1026

9210:                                             ; preds = %9208
  %9211 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 7, i32 noundef 0)
          to label %9212 unwind label %1026

9212:                                             ; preds = %9210
  %9213 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %9209, ptr noundef nonnull align 8 dereferenceable(8) %9211)
          to label %9214 unwind label %1026

9214:                                             ; preds = %9212
  %9215 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 1 dereferenceable(1) %9213)
          to label %9216 unwind label %1026

9216:                                             ; preds = %9214
  %9217 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %9218 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9217, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %9219 unwind label %1026

9219:                                             ; preds = %9216
  %9220 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %9221 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9220, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %9222 unwind label %1026

9222:                                             ; preds = %9219
  call void @llvm.lifetime.start.p0(i64 1, ptr %567) #5
  store i8 0, ptr %567, align 1, !tbaa !9
  %9223 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %9224 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9223, ptr noundef nonnull align 1 dereferenceable(1) %567)
          to label %9225 unwind label %9242

9225:                                             ; preds = %9222
  call void @llvm.lifetime.end.p0(i64 1, ptr %567) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %568) #5
  store i8 1, ptr %568, align 1, !tbaa !9
  %9226 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %9227 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9226, ptr noundef nonnull align 1 dereferenceable(1) %568)
          to label %9228 unwind label %9246

9228:                                             ; preds = %9225
  call void @llvm.lifetime.end.p0(i64 1, ptr %568) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9229 unwind label %1026

9229:                                             ; preds = %9228
  br label %9230

9230:                                             ; preds = %9255, %9229
  br label %9231

9231:                                             ; preds = %9230
  call void @llvm.lifetime.start.p0(i64 1, ptr %569) #5
  store i8 0, ptr %569, align 1, !tbaa !9
  %9232 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %9233 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9232, ptr noundef nonnull align 1 dereferenceable(1) %569)
          to label %9234 unwind label %9250

9234:                                             ; preds = %9231
  call void @llvm.lifetime.end.p0(i64 1, ptr %569) #5
  %9235 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %9236 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %9235)
          to label %9237 unwind label %1026

9237:                                             ; preds = %9234
  %9238 = load i8, ptr %9236, align 1, !tbaa !9, !range !11, !noundef !12
  %9239 = trunc i8 %9238 to i1
  br i1 %9239, label %9240, label %9254

9240:                                             ; preds = %9237
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9241 unwind label %1026

9241:                                             ; preds = %9240
  br label %9256

9242:                                             ; preds = %9222
  %9243 = landingpad { ptr, i32 }
          cleanup
  %9244 = extractvalue { ptr, i32 } %9243, 0
  store ptr %9244, ptr %5, align 8
  %9245 = extractvalue { ptr, i32 } %9243, 1
  store i32 %9245, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %567) #5
  br label %12015

9246:                                             ; preds = %9225
  %9247 = landingpad { ptr, i32 }
          cleanup
  %9248 = extractvalue { ptr, i32 } %9247, 0
  store ptr %9248, ptr %5, align 8
  %9249 = extractvalue { ptr, i32 } %9247, 1
  store i32 %9249, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %568) #5
  br label %12015

9250:                                             ; preds = %9231
  %9251 = landingpad { ptr, i32 }
          cleanup
  %9252 = extractvalue { ptr, i32 } %9251, 0
  store ptr %9252, ptr %5, align 8
  %9253 = extractvalue { ptr, i32 } %9251, 1
  store i32 %9253, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %569) #5
  br label %12015

9254:                                             ; preds = %9237
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9255 unwind label %1026

9255:                                             ; preds = %9254
  br label %9230, !llvm.loop !124

9256:                                             ; preds = %9241
  br label %9257

9257:                                             ; preds = %9256
  br label %9258

9258:                                             ; preds = %9257
  br label %9259

9259:                                             ; preds = %9258
  br label %9260

9260:                                             ; preds = %9259, %9107
  br label %9265

9261:                                             ; preds = %7912
  %9262 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef -3)
          to label %9263 unwind label %1026

9263:                                             ; preds = %9261
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9264 unwind label %1026

9264:                                             ; preds = %9263
  br label %9265

9265:                                             ; preds = %9264, %9260, %8732, %8632, %8534, %8376, %8255, %8134
  br label %9266

9266:                                             ; preds = %9265, %7766
  br label %11913

9267:                                             ; preds = %2780
  %9268 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
          to label %9269 unwind label %1026

9269:                                             ; preds = %9267
  %9270 = icmp ne i64 %9268, 3
  br i1 %9270, label %9275, label %9271

9271:                                             ; preds = %9269
  %9272 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %15)
          to label %9273 unwind label %1026

9273:                                             ; preds = %9271
  %9274 = icmp ne i64 %9272, 0
  br i1 %9274, label %9275, label %9279

9275:                                             ; preds = %9273, %9269
  %9276 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 1)
          to label %9277 unwind label %1026

9277:                                             ; preds = %9275
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9278 unwind label %1026

9278:                                             ; preds = %9277
  br label %11091

9279:                                             ; preds = %9273
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9280 unwind label %1026

9280:                                             ; preds = %9279
  %9281 = load i8, ptr %34, align 1, !tbaa !9, !range !11, !noundef !12
  %9282 = trunc i8 %9281 to i1
  %9283 = zext i1 %9282 to i8
  store i8 %9283, ptr %34, align 1, !tbaa !9
  %9284 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %32, i32 noundef 1)
          to label %9285 unwind label %1026

9285:                                             ; preds = %9280
  %9286 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 7
  %9287 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %9286)
          to label %9288 unwind label %1026

9288:                                             ; preds = %9285
  %9289 = load i8, ptr %9287, align 1, !tbaa !9, !range !11, !noundef !12
  %9290 = trunc i8 %9289 to i1
  br i1 %9290, label %9294, label %9291

9291:                                             ; preds = %9288
  %9292 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, i32 noundef 156)
          to label %9293 unwind label %1026

9293:                                             ; preds = %9291
  br label %9297

9294:                                             ; preds = %9288
  %9295 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, i32 noundef 152)
          to label %9296 unwind label %1026

9296:                                             ; preds = %9294
  br label %9297

9297:                                             ; preds = %9296, %9293
  %9298 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %24, i32 noundef 10)
          to label %9299 unwind label %1026

9299:                                             ; preds = %9297
  call void @llvm.lifetime.start.p0(i64 24, ptr %570) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %571) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %571, i32 noundef 0)
          to label %9300 unwind label %9335

9300:                                             ; preds = %9299
  %9301 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %571)
          to label %9302 unwind label %9339

9302:                                             ; preds = %9300
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %570, ptr noundef nonnull align 1 dereferenceable(1) %9301)
          to label %9303 unwind label %9339

9303:                                             ; preds = %9302
  %9304 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %9305 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9304, ptr noundef nonnull align 8 dereferenceable(24) %570)
          to label %9306 unwind label %9343

9306:                                             ; preds = %9303
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %570) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %571) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %571) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %570) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %572) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %573) #5
  invoke void @_ZN5sc_dt6sc_intILi2EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %573, i32 noundef 0)
          to label %9307 unwind label %9349

9307:                                             ; preds = %9306
  %9308 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %573, ptr noundef nonnull align 8 dereferenceable(8) %18)
          to label %9309 unwind label %9353

9309:                                             ; preds = %9307
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %572, ptr noundef nonnull align 1 dereferenceable(1) %9308)
          to label %9310 unwind label %9353

9310:                                             ; preds = %9309
  %9311 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %9312 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9311, ptr noundef nonnull align 8 dereferenceable(24) %572)
          to label %9313 unwind label %9357

9313:                                             ; preds = %9310
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %572) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %573) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %573) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %572) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %574) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %574, i32 noundef 20)
          to label %9314 unwind label %9363

9314:                                             ; preds = %9313
  %9315 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %9316 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9315, ptr noundef nonnull align 8 dereferenceable(24) %574)
          to label %9317 unwind label %9367

9317:                                             ; preds = %9314
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %574) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %574) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %575) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %575, i32 noundef -3)
          to label %9318 unwind label %9372

9318:                                             ; preds = %9317
  %9319 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %9320 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9319, ptr noundef nonnull align 8 dereferenceable(24) %575)
          to label %9321 unwind label %9376

9321:                                             ; preds = %9318
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %575) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %575) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %576) #5
  store i8 1, ptr %576, align 1, !tbaa !9
  %9322 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %9323 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9322, ptr noundef nonnull align 1 dereferenceable(1) %576)
          to label %9324 unwind label %9381

9324:                                             ; preds = %9321
  call void @llvm.lifetime.end.p0(i64 1, ptr %576) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9325 unwind label %1026

9325:                                             ; preds = %9324
  br label %9326

9326:                                             ; preds = %9334, %9325
  %9327 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %9328 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %9327)
          to label %9329 unwind label %1026

9329:                                             ; preds = %9326
  %9330 = load i8, ptr %9328, align 1, !tbaa !9, !range !11, !noundef !12
  %9331 = trunc i8 %9330 to i1
  %9332 = xor i1 %9331, true
  br i1 %9332, label %9333, label %9385

9333:                                             ; preds = %9329
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9334 unwind label %1026

9334:                                             ; preds = %9333
  br label %9326, !llvm.loop !125

9335:                                             ; preds = %9299
  %9336 = landingpad { ptr, i32 }
          cleanup
  %9337 = extractvalue { ptr, i32 } %9336, 0
  store ptr %9337, ptr %5, align 8
  %9338 = extractvalue { ptr, i32 } %9336, 1
  store i32 %9338, ptr %6, align 4
  br label %9348

9339:                                             ; preds = %9302, %9300
  %9340 = landingpad { ptr, i32 }
          cleanup
  %9341 = extractvalue { ptr, i32 } %9340, 0
  store ptr %9341, ptr %5, align 8
  %9342 = extractvalue { ptr, i32 } %9340, 1
  store i32 %9342, ptr %6, align 4
  br label %9347

9343:                                             ; preds = %9303
  %9344 = landingpad { ptr, i32 }
          cleanup
  %9345 = extractvalue { ptr, i32 } %9344, 0
  store ptr %9345, ptr %5, align 8
  %9346 = extractvalue { ptr, i32 } %9344, 1
  store i32 %9346, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %570) #5
  br label %9347

9347:                                             ; preds = %9343, %9339
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %571) #5
  br label %9348

9348:                                             ; preds = %9347, %9335
  call void @llvm.lifetime.end.p0(i64 24, ptr %571) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %570) #5
  br label %12015

9349:                                             ; preds = %9306
  %9350 = landingpad { ptr, i32 }
          cleanup
  %9351 = extractvalue { ptr, i32 } %9350, 0
  store ptr %9351, ptr %5, align 8
  %9352 = extractvalue { ptr, i32 } %9350, 1
  store i32 %9352, ptr %6, align 4
  br label %9362

9353:                                             ; preds = %9309, %9307
  %9354 = landingpad { ptr, i32 }
          cleanup
  %9355 = extractvalue { ptr, i32 } %9354, 0
  store ptr %9355, ptr %5, align 8
  %9356 = extractvalue { ptr, i32 } %9354, 1
  store i32 %9356, ptr %6, align 4
  br label %9361

9357:                                             ; preds = %9310
  %9358 = landingpad { ptr, i32 }
          cleanup
  %9359 = extractvalue { ptr, i32 } %9358, 0
  store ptr %9359, ptr %5, align 8
  %9360 = extractvalue { ptr, i32 } %9358, 1
  store i32 %9360, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %572) #5
  br label %9361

9361:                                             ; preds = %9357, %9353
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %573) #5
  br label %9362

9362:                                             ; preds = %9361, %9349
  call void @llvm.lifetime.end.p0(i64 24, ptr %573) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %572) #5
  br label %12015

9363:                                             ; preds = %9313
  %9364 = landingpad { ptr, i32 }
          cleanup
  %9365 = extractvalue { ptr, i32 } %9364, 0
  store ptr %9365, ptr %5, align 8
  %9366 = extractvalue { ptr, i32 } %9364, 1
  store i32 %9366, ptr %6, align 4
  br label %9371

9367:                                             ; preds = %9314
  %9368 = landingpad { ptr, i32 }
          cleanup
  %9369 = extractvalue { ptr, i32 } %9368, 0
  store ptr %9369, ptr %5, align 8
  %9370 = extractvalue { ptr, i32 } %9368, 1
  store i32 %9370, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %574) #5
  br label %9371

9371:                                             ; preds = %9367, %9363
  call void @llvm.lifetime.end.p0(i64 24, ptr %574) #5
  br label %12015

9372:                                             ; preds = %9317
  %9373 = landingpad { ptr, i32 }
          cleanup
  %9374 = extractvalue { ptr, i32 } %9373, 0
  store ptr %9374, ptr %5, align 8
  %9375 = extractvalue { ptr, i32 } %9373, 1
  store i32 %9375, ptr %6, align 4
  br label %9380

9376:                                             ; preds = %9318
  %9377 = landingpad { ptr, i32 }
          cleanup
  %9378 = extractvalue { ptr, i32 } %9377, 0
  store ptr %9378, ptr %5, align 8
  %9379 = extractvalue { ptr, i32 } %9377, 1
  store i32 %9379, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %575) #5
  br label %9380

9380:                                             ; preds = %9376, %9372
  call void @llvm.lifetime.end.p0(i64 24, ptr %575) #5
  br label %12015

9381:                                             ; preds = %9321
  %9382 = landingpad { ptr, i32 }
          cleanup
  %9383 = extractvalue { ptr, i32 } %9382, 0
  store ptr %9383, ptr %5, align 8
  %9384 = extractvalue { ptr, i32 } %9382, 1
  store i32 %9384, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %576) #5
  br label %12015

9385:                                             ; preds = %9329
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9386 unwind label %1026

9386:                                             ; preds = %9385
  call void @llvm.lifetime.start.p0(i64 1, ptr %577) #5
  store i8 0, ptr %577, align 1, !tbaa !9
  %9387 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %9388 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9387, ptr noundef nonnull align 1 dereferenceable(1) %577)
          to label %9389 unwind label %9425

9389:                                             ; preds = %9386
  call void @llvm.lifetime.end.p0(i64 1, ptr %577) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9390 unwind label %1026

9390:                                             ; preds = %9389
  call void @llvm.lifetime.start.p0(i64 24, ptr %578) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %579) #5
  invoke void @_ZN5sc_dt6sc_intILi6EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %579, i32 noundef 1)
          to label %9391 unwind label %9429

9391:                                             ; preds = %9390
  %9392 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %24, ptr noundef nonnull align 8 dereferenceable(8) %579)
          to label %9393 unwind label %9433

9393:                                             ; preds = %9391
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %578, ptr noundef nonnull align 1 dereferenceable(1) %9392)
          to label %9394 unwind label %9433

9394:                                             ; preds = %9393
  %9395 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %9396 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9395, ptr noundef nonnull align 8 dereferenceable(24) %578)
          to label %9397 unwind label %9437

9397:                                             ; preds = %9394
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %578) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %579) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %579) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %578) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %580) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %581) #5
  invoke void @_ZN5sc_dt6sc_intILi2EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %581, i32 noundef 0)
          to label %9398 unwind label %9443

9398:                                             ; preds = %9397
  %9399 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %581, ptr noundef nonnull align 8 dereferenceable(8) %18)
          to label %9400 unwind label %9447

9400:                                             ; preds = %9398
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %580, ptr noundef nonnull align 1 dereferenceable(1) %9399)
          to label %9401 unwind label %9447

9401:                                             ; preds = %9400
  %9402 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %9403 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9402, ptr noundef nonnull align 8 dereferenceable(24) %580)
          to label %9404 unwind label %9451

9404:                                             ; preds = %9401
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %580) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %581) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %581) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %580) #5
  %9405 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %9406 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9405, ptr noundef nonnull align 8 dereferenceable(24) %27)
          to label %9407 unwind label %1026

9407:                                             ; preds = %9404
  call void @llvm.lifetime.start.p0(i64 24, ptr %582) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %582, i32 noundef -2)
          to label %9408 unwind label %9457

9408:                                             ; preds = %9407
  %9409 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %9410 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9409, ptr noundef nonnull align 8 dereferenceable(24) %582)
          to label %9411 unwind label %9461

9411:                                             ; preds = %9408
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %582) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %582) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %583) #5
  store i8 1, ptr %583, align 1, !tbaa !9
  %9412 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %9413 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9412, ptr noundef nonnull align 1 dereferenceable(1) %583)
          to label %9414 unwind label %9466

9414:                                             ; preds = %9411
  call void @llvm.lifetime.end.p0(i64 1, ptr %583) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9415 unwind label %1026

9415:                                             ; preds = %9414
  br label %9416

9416:                                             ; preds = %9424, %9415
  %9417 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %9418 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %9417)
          to label %9419 unwind label %1026

9419:                                             ; preds = %9416
  %9420 = load i8, ptr %9418, align 1, !tbaa !9, !range !11, !noundef !12
  %9421 = trunc i8 %9420 to i1
  %9422 = xor i1 %9421, true
  br i1 %9422, label %9423, label %9470

9423:                                             ; preds = %9419
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9424 unwind label %1026

9424:                                             ; preds = %9423
  br label %9416, !llvm.loop !126

9425:                                             ; preds = %9386
  %9426 = landingpad { ptr, i32 }
          cleanup
  %9427 = extractvalue { ptr, i32 } %9426, 0
  store ptr %9427, ptr %5, align 8
  %9428 = extractvalue { ptr, i32 } %9426, 1
  store i32 %9428, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %577) #5
  br label %12015

9429:                                             ; preds = %9390
  %9430 = landingpad { ptr, i32 }
          cleanup
  %9431 = extractvalue { ptr, i32 } %9430, 0
  store ptr %9431, ptr %5, align 8
  %9432 = extractvalue { ptr, i32 } %9430, 1
  store i32 %9432, ptr %6, align 4
  br label %9442

9433:                                             ; preds = %9393, %9391
  %9434 = landingpad { ptr, i32 }
          cleanup
  %9435 = extractvalue { ptr, i32 } %9434, 0
  store ptr %9435, ptr %5, align 8
  %9436 = extractvalue { ptr, i32 } %9434, 1
  store i32 %9436, ptr %6, align 4
  br label %9441

9437:                                             ; preds = %9394
  %9438 = landingpad { ptr, i32 }
          cleanup
  %9439 = extractvalue { ptr, i32 } %9438, 0
  store ptr %9439, ptr %5, align 8
  %9440 = extractvalue { ptr, i32 } %9438, 1
  store i32 %9440, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %578) #5
  br label %9441

9441:                                             ; preds = %9437, %9433
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %579) #5
  br label %9442

9442:                                             ; preds = %9441, %9429
  call void @llvm.lifetime.end.p0(i64 24, ptr %579) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %578) #5
  br label %12015

9443:                                             ; preds = %9397
  %9444 = landingpad { ptr, i32 }
          cleanup
  %9445 = extractvalue { ptr, i32 } %9444, 0
  store ptr %9445, ptr %5, align 8
  %9446 = extractvalue { ptr, i32 } %9444, 1
  store i32 %9446, ptr %6, align 4
  br label %9456

9447:                                             ; preds = %9400, %9398
  %9448 = landingpad { ptr, i32 }
          cleanup
  %9449 = extractvalue { ptr, i32 } %9448, 0
  store ptr %9449, ptr %5, align 8
  %9450 = extractvalue { ptr, i32 } %9448, 1
  store i32 %9450, ptr %6, align 4
  br label %9455

9451:                                             ; preds = %9401
  %9452 = landingpad { ptr, i32 }
          cleanup
  %9453 = extractvalue { ptr, i32 } %9452, 0
  store ptr %9453, ptr %5, align 8
  %9454 = extractvalue { ptr, i32 } %9452, 1
  store i32 %9454, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %580) #5
  br label %9455

9455:                                             ; preds = %9451, %9447
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %581) #5
  br label %9456

9456:                                             ; preds = %9455, %9443
  call void @llvm.lifetime.end.p0(i64 24, ptr %581) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %580) #5
  br label %12015

9457:                                             ; preds = %9407
  %9458 = landingpad { ptr, i32 }
          cleanup
  %9459 = extractvalue { ptr, i32 } %9458, 0
  store ptr %9459, ptr %5, align 8
  %9460 = extractvalue { ptr, i32 } %9458, 1
  store i32 %9460, ptr %6, align 4
  br label %9465

9461:                                             ; preds = %9408
  %9462 = landingpad { ptr, i32 }
          cleanup
  %9463 = extractvalue { ptr, i32 } %9462, 0
  store ptr %9463, ptr %5, align 8
  %9464 = extractvalue { ptr, i32 } %9462, 1
  store i32 %9464, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %582) #5
  br label %9465

9465:                                             ; preds = %9461, %9457
  call void @llvm.lifetime.end.p0(i64 24, ptr %582) #5
  br label %12015

9466:                                             ; preds = %9411
  %9467 = landingpad { ptr, i32 }
          cleanup
  %9468 = extractvalue { ptr, i32 } %9467, 0
  store ptr %9468, ptr %5, align 8
  %9469 = extractvalue { ptr, i32 } %9467, 1
  store i32 %9469, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %583) #5
  br label %12015

9470:                                             ; preds = %9419
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9471 unwind label %1026

9471:                                             ; preds = %9470
  call void @llvm.lifetime.start.p0(i64 1, ptr %584) #5
  store i8 0, ptr %584, align 1, !tbaa !9
  %9472 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %9473 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9472, ptr noundef nonnull align 1 dereferenceable(1) %584)
          to label %9474 unwind label %9508

9474:                                             ; preds = %9471
  call void @llvm.lifetime.end.p0(i64 1, ptr %584) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9475 unwind label %1026

9475:                                             ; preds = %9474
  call void @llvm.lifetime.start.p0(i64 24, ptr %585) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %585, i32 noundef 10)
          to label %9476 unwind label %9512

9476:                                             ; preds = %9475
  %9477 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %585)
          to label %9478 unwind label %9516

9478:                                             ; preds = %9476
  %9479 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %9477)
          to label %9480 unwind label %9516

9480:                                             ; preds = %9478
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %585) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %585) #5
  %9481 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 0)
          to label %9482 unwind label %1026

9482:                                             ; preds = %9480
  %9483 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %9484 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9483, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %9485 unwind label %1026

9485:                                             ; preds = %9482
  %9486 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %9487 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9486, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %9488 unwind label %1026

9488:                                             ; preds = %9485
  call void @llvm.lifetime.start.p0(i64 1, ptr %586) #5
  store i8 0, ptr %586, align 1, !tbaa !9
  %9489 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %9490 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9489, ptr noundef nonnull align 1 dereferenceable(1) %586)
          to label %9491 unwind label %9521

9491:                                             ; preds = %9488
  call void @llvm.lifetime.end.p0(i64 1, ptr %586) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %587) #5
  store i8 1, ptr %587, align 1, !tbaa !9
  %9492 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %9493 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9492, ptr noundef nonnull align 1 dereferenceable(1) %587)
          to label %9494 unwind label %9525

9494:                                             ; preds = %9491
  call void @llvm.lifetime.end.p0(i64 1, ptr %587) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9495 unwind label %1026

9495:                                             ; preds = %9494
  br label %9496

9496:                                             ; preds = %9534, %9495
  br label %9497

9497:                                             ; preds = %9496
  call void @llvm.lifetime.start.p0(i64 1, ptr %588) #5
  store i8 0, ptr %588, align 1, !tbaa !9
  %9498 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %9499 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9498, ptr noundef nonnull align 1 dereferenceable(1) %588)
          to label %9500 unwind label %9529

9500:                                             ; preds = %9497
  call void @llvm.lifetime.end.p0(i64 1, ptr %588) #5
  %9501 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %9502 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %9501)
          to label %9503 unwind label %1026

9503:                                             ; preds = %9500
  %9504 = load i8, ptr %9502, align 1, !tbaa !9, !range !11, !noundef !12
  %9505 = trunc i8 %9504 to i1
  br i1 %9505, label %9506, label %9533

9506:                                             ; preds = %9503
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9507 unwind label %1026

9507:                                             ; preds = %9506
  br label %9535

9508:                                             ; preds = %9471
  %9509 = landingpad { ptr, i32 }
          cleanup
  %9510 = extractvalue { ptr, i32 } %9509, 0
  store ptr %9510, ptr %5, align 8
  %9511 = extractvalue { ptr, i32 } %9509, 1
  store i32 %9511, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %584) #5
  br label %12015

9512:                                             ; preds = %9475
  %9513 = landingpad { ptr, i32 }
          cleanup
  %9514 = extractvalue { ptr, i32 } %9513, 0
  store ptr %9514, ptr %5, align 8
  %9515 = extractvalue { ptr, i32 } %9513, 1
  store i32 %9515, ptr %6, align 4
  br label %9520

9516:                                             ; preds = %9478, %9476
  %9517 = landingpad { ptr, i32 }
          cleanup
  %9518 = extractvalue { ptr, i32 } %9517, 0
  store ptr %9518, ptr %5, align 8
  %9519 = extractvalue { ptr, i32 } %9517, 1
  store i32 %9519, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %585) #5
  br label %9520

9520:                                             ; preds = %9516, %9512
  call void @llvm.lifetime.end.p0(i64 24, ptr %585) #5
  br label %12015

9521:                                             ; preds = %9488
  %9522 = landingpad { ptr, i32 }
          cleanup
  %9523 = extractvalue { ptr, i32 } %9522, 0
  store ptr %9523, ptr %5, align 8
  %9524 = extractvalue { ptr, i32 } %9522, 1
  store i32 %9524, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %586) #5
  br label %12015

9525:                                             ; preds = %9491
  %9526 = landingpad { ptr, i32 }
          cleanup
  %9527 = extractvalue { ptr, i32 } %9526, 0
  store ptr %9527, ptr %5, align 8
  %9528 = extractvalue { ptr, i32 } %9526, 1
  store i32 %9528, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %587) #5
  br label %12015

9529:                                             ; preds = %9497
  %9530 = landingpad { ptr, i32 }
          cleanup
  %9531 = extractvalue { ptr, i32 } %9530, 0
  store ptr %9531, ptr %5, align 8
  %9532 = extractvalue { ptr, i32 } %9530, 1
  store i32 %9532, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %588) #5
  br label %12015

9533:                                             ; preds = %9503
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9534 unwind label %1026

9534:                                             ; preds = %9533
  br label %9496, !llvm.loop !127

9535:                                             ; preds = %9507
  call void @llvm.lifetime.start.p0(i64 24, ptr %589) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %589, i32 noundef 8)
          to label %9536 unwind label %9571

9536:                                             ; preds = %9535
  %9537 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %9538 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9537, ptr noundef nonnull align 8 dereferenceable(24) %589)
          to label %9539 unwind label %9575

9539:                                             ; preds = %9536
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %589) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %589) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %590) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %591) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %591, i32 noundef 24)
          to label %9540 unwind label %9580

9540:                                             ; preds = %9539
  %9541 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %591)
          to label %9542 unwind label %9584

9542:                                             ; preds = %9540
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %590, ptr noundef nonnull align 1 dereferenceable(1) %9541)
          to label %9543 unwind label %9584

9543:                                             ; preds = %9542
  %9544 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %9545 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9544, ptr noundef nonnull align 8 dereferenceable(24) %590)
          to label %9546 unwind label %9588

9546:                                             ; preds = %9543
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %590) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %591) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %591) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %590) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %592) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %592, i32 noundef 3)
          to label %9547 unwind label %9594

9547:                                             ; preds = %9546
  %9548 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %9549 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9548, ptr noundef nonnull align 8 dereferenceable(24) %592)
          to label %9550 unwind label %9598

9550:                                             ; preds = %9547
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %592) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %592) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %593) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %593, i32 noundef 3)
          to label %9551 unwind label %9603

9551:                                             ; preds = %9550
  %9552 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %9553 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9552, ptr noundef nonnull align 8 dereferenceable(24) %593)
          to label %9554 unwind label %9607

9554:                                             ; preds = %9551
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %593) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %593) #5
  %9555 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %9556 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9555, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %9557 unwind label %1026

9557:                                             ; preds = %9554
  call void @llvm.lifetime.start.p0(i64 1, ptr %594) #5
  store i8 1, ptr %594, align 1, !tbaa !9
  %9558 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %9559 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9558, ptr noundef nonnull align 1 dereferenceable(1) %594)
          to label %9560 unwind label %9612

9560:                                             ; preds = %9557
  call void @llvm.lifetime.end.p0(i64 1, ptr %594) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9561 unwind label %1026

9561:                                             ; preds = %9560
  br label %9562

9562:                                             ; preds = %9570, %9561
  %9563 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %9564 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %9563)
          to label %9565 unwind label %1026

9565:                                             ; preds = %9562
  %9566 = load i8, ptr %9564, align 1, !tbaa !9, !range !11, !noundef !12
  %9567 = trunc i8 %9566 to i1
  %9568 = xor i1 %9567, true
  br i1 %9568, label %9569, label %9616

9569:                                             ; preds = %9565
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9570 unwind label %1026

9570:                                             ; preds = %9569
  br label %9562, !llvm.loop !128

9571:                                             ; preds = %9535
  %9572 = landingpad { ptr, i32 }
          cleanup
  %9573 = extractvalue { ptr, i32 } %9572, 0
  store ptr %9573, ptr %5, align 8
  %9574 = extractvalue { ptr, i32 } %9572, 1
  store i32 %9574, ptr %6, align 4
  br label %9579

9575:                                             ; preds = %9536
  %9576 = landingpad { ptr, i32 }
          cleanup
  %9577 = extractvalue { ptr, i32 } %9576, 0
  store ptr %9577, ptr %5, align 8
  %9578 = extractvalue { ptr, i32 } %9576, 1
  store i32 %9578, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %589) #5
  br label %9579

9579:                                             ; preds = %9575, %9571
  call void @llvm.lifetime.end.p0(i64 24, ptr %589) #5
  br label %12015

9580:                                             ; preds = %9539
  %9581 = landingpad { ptr, i32 }
          cleanup
  %9582 = extractvalue { ptr, i32 } %9581, 0
  store ptr %9582, ptr %5, align 8
  %9583 = extractvalue { ptr, i32 } %9581, 1
  store i32 %9583, ptr %6, align 4
  br label %9593

9584:                                             ; preds = %9542, %9540
  %9585 = landingpad { ptr, i32 }
          cleanup
  %9586 = extractvalue { ptr, i32 } %9585, 0
  store ptr %9586, ptr %5, align 8
  %9587 = extractvalue { ptr, i32 } %9585, 1
  store i32 %9587, ptr %6, align 4
  br label %9592

9588:                                             ; preds = %9543
  %9589 = landingpad { ptr, i32 }
          cleanup
  %9590 = extractvalue { ptr, i32 } %9589, 0
  store ptr %9590, ptr %5, align 8
  %9591 = extractvalue { ptr, i32 } %9589, 1
  store i32 %9591, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %590) #5
  br label %9592

9592:                                             ; preds = %9588, %9584
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %591) #5
  br label %9593

9593:                                             ; preds = %9592, %9580
  call void @llvm.lifetime.end.p0(i64 24, ptr %591) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %590) #5
  br label %12015

9594:                                             ; preds = %9546
  %9595 = landingpad { ptr, i32 }
          cleanup
  %9596 = extractvalue { ptr, i32 } %9595, 0
  store ptr %9596, ptr %5, align 8
  %9597 = extractvalue { ptr, i32 } %9595, 1
  store i32 %9597, ptr %6, align 4
  br label %9602

9598:                                             ; preds = %9547
  %9599 = landingpad { ptr, i32 }
          cleanup
  %9600 = extractvalue { ptr, i32 } %9599, 0
  store ptr %9600, ptr %5, align 8
  %9601 = extractvalue { ptr, i32 } %9599, 1
  store i32 %9601, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %592) #5
  br label %9602

9602:                                             ; preds = %9598, %9594
  call void @llvm.lifetime.end.p0(i64 24, ptr %592) #5
  br label %12015

9603:                                             ; preds = %9550
  %9604 = landingpad { ptr, i32 }
          cleanup
  %9605 = extractvalue { ptr, i32 } %9604, 0
  store ptr %9605, ptr %5, align 8
  %9606 = extractvalue { ptr, i32 } %9604, 1
  store i32 %9606, ptr %6, align 4
  br label %9611

9607:                                             ; preds = %9551
  %9608 = landingpad { ptr, i32 }
          cleanup
  %9609 = extractvalue { ptr, i32 } %9608, 0
  store ptr %9609, ptr %5, align 8
  %9610 = extractvalue { ptr, i32 } %9608, 1
  store i32 %9610, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %593) #5
  br label %9611

9611:                                             ; preds = %9607, %9603
  call void @llvm.lifetime.end.p0(i64 24, ptr %593) #5
  br label %12015

9612:                                             ; preds = %9557
  %9613 = landingpad { ptr, i32 }
          cleanup
  %9614 = extractvalue { ptr, i32 } %9613, 0
  store ptr %9614, ptr %5, align 8
  %9615 = extractvalue { ptr, i32 } %9613, 1
  store i32 %9615, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %594) #5
  br label %12015

9616:                                             ; preds = %9565
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9617 unwind label %1026

9617:                                             ; preds = %9616
  call void @llvm.lifetime.start.p0(i64 1, ptr %595) #5
  store i8 0, ptr %595, align 1, !tbaa !9
  %9618 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %9619 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9618, ptr noundef nonnull align 1 dereferenceable(1) %595)
          to label %9620 unwind label %9657

9620:                                             ; preds = %9617
  call void @llvm.lifetime.end.p0(i64 1, ptr %595) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9621 unwind label %1026

9621:                                             ; preds = %9620
  call void @llvm.lifetime.start.p0(i64 24, ptr %596) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %596, i32 noundef 64)
          to label %9622 unwind label %9661

9622:                                             ; preds = %9621
  %9623 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %9624 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9623, ptr noundef nonnull align 8 dereferenceable(24) %596)
          to label %9625 unwind label %9665

9625:                                             ; preds = %9622
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %596) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %596) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %597) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %598) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %598, i32 noundef 27)
          to label %9626 unwind label %9670

9626:                                             ; preds = %9625
  %9627 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %598)
          to label %9628 unwind label %9674

9628:                                             ; preds = %9626
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %597, ptr noundef nonnull align 1 dereferenceable(1) %9627)
          to label %9629 unwind label %9674

9629:                                             ; preds = %9628
  %9630 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %9631 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9630, ptr noundef nonnull align 8 dereferenceable(24) %597)
          to label %9632 unwind label %9678

9632:                                             ; preds = %9629
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %597) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %598) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %598) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %597) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %599) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %599, i32 noundef 32)
          to label %9633 unwind label %9684

9633:                                             ; preds = %9632
  %9634 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %9635 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9634, ptr noundef nonnull align 8 dereferenceable(24) %599)
          to label %9636 unwind label %9688

9636:                                             ; preds = %9633
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %599) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %599) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %600) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %600, i32 noundef 3)
          to label %9637 unwind label %9693

9637:                                             ; preds = %9636
  %9638 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %9639 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9638, ptr noundef nonnull align 8 dereferenceable(24) %600)
          to label %9640 unwind label %9697

9640:                                             ; preds = %9637
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %600) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %600) #5
  %9641 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %9642 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9641, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %9643 unwind label %1026

9643:                                             ; preds = %9640
  call void @llvm.lifetime.start.p0(i64 1, ptr %601) #5
  store i8 1, ptr %601, align 1, !tbaa !9
  %9644 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %9645 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9644, ptr noundef nonnull align 1 dereferenceable(1) %601)
          to label %9646 unwind label %9702

9646:                                             ; preds = %9643
  call void @llvm.lifetime.end.p0(i64 1, ptr %601) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9647 unwind label %1026

9647:                                             ; preds = %9646
  br label %9648

9648:                                             ; preds = %9656, %9647
  %9649 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %9650 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %9649)
          to label %9651 unwind label %1026

9651:                                             ; preds = %9648
  %9652 = load i8, ptr %9650, align 1, !tbaa !9, !range !11, !noundef !12
  %9653 = trunc i8 %9652 to i1
  %9654 = xor i1 %9653, true
  br i1 %9654, label %9655, label %9706

9655:                                             ; preds = %9651
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9656 unwind label %1026

9656:                                             ; preds = %9655
  br label %9648, !llvm.loop !129

9657:                                             ; preds = %9617
  %9658 = landingpad { ptr, i32 }
          cleanup
  %9659 = extractvalue { ptr, i32 } %9658, 0
  store ptr %9659, ptr %5, align 8
  %9660 = extractvalue { ptr, i32 } %9658, 1
  store i32 %9660, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %595) #5
  br label %12015

9661:                                             ; preds = %9621
  %9662 = landingpad { ptr, i32 }
          cleanup
  %9663 = extractvalue { ptr, i32 } %9662, 0
  store ptr %9663, ptr %5, align 8
  %9664 = extractvalue { ptr, i32 } %9662, 1
  store i32 %9664, ptr %6, align 4
  br label %9669

9665:                                             ; preds = %9622
  %9666 = landingpad { ptr, i32 }
          cleanup
  %9667 = extractvalue { ptr, i32 } %9666, 0
  store ptr %9667, ptr %5, align 8
  %9668 = extractvalue { ptr, i32 } %9666, 1
  store i32 %9668, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %596) #5
  br label %9669

9669:                                             ; preds = %9665, %9661
  call void @llvm.lifetime.end.p0(i64 24, ptr %596) #5
  br label %12015

9670:                                             ; preds = %9625
  %9671 = landingpad { ptr, i32 }
          cleanup
  %9672 = extractvalue { ptr, i32 } %9671, 0
  store ptr %9672, ptr %5, align 8
  %9673 = extractvalue { ptr, i32 } %9671, 1
  store i32 %9673, ptr %6, align 4
  br label %9683

9674:                                             ; preds = %9628, %9626
  %9675 = landingpad { ptr, i32 }
          cleanup
  %9676 = extractvalue { ptr, i32 } %9675, 0
  store ptr %9676, ptr %5, align 8
  %9677 = extractvalue { ptr, i32 } %9675, 1
  store i32 %9677, ptr %6, align 4
  br label %9682

9678:                                             ; preds = %9629
  %9679 = landingpad { ptr, i32 }
          cleanup
  %9680 = extractvalue { ptr, i32 } %9679, 0
  store ptr %9680, ptr %5, align 8
  %9681 = extractvalue { ptr, i32 } %9679, 1
  store i32 %9681, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %597) #5
  br label %9682

9682:                                             ; preds = %9678, %9674
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %598) #5
  br label %9683

9683:                                             ; preds = %9682, %9670
  call void @llvm.lifetime.end.p0(i64 24, ptr %598) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %597) #5
  br label %12015

9684:                                             ; preds = %9632
  %9685 = landingpad { ptr, i32 }
          cleanup
  %9686 = extractvalue { ptr, i32 } %9685, 0
  store ptr %9686, ptr %5, align 8
  %9687 = extractvalue { ptr, i32 } %9685, 1
  store i32 %9687, ptr %6, align 4
  br label %9692

9688:                                             ; preds = %9633
  %9689 = landingpad { ptr, i32 }
          cleanup
  %9690 = extractvalue { ptr, i32 } %9689, 0
  store ptr %9690, ptr %5, align 8
  %9691 = extractvalue { ptr, i32 } %9689, 1
  store i32 %9691, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %599) #5
  br label %9692

9692:                                             ; preds = %9688, %9684
  call void @llvm.lifetime.end.p0(i64 24, ptr %599) #5
  br label %12015

9693:                                             ; preds = %9636
  %9694 = landingpad { ptr, i32 }
          cleanup
  %9695 = extractvalue { ptr, i32 } %9694, 0
  store ptr %9695, ptr %5, align 8
  %9696 = extractvalue { ptr, i32 } %9694, 1
  store i32 %9696, ptr %6, align 4
  br label %9701

9697:                                             ; preds = %9637
  %9698 = landingpad { ptr, i32 }
          cleanup
  %9699 = extractvalue { ptr, i32 } %9698, 0
  store ptr %9699, ptr %5, align 8
  %9700 = extractvalue { ptr, i32 } %9698, 1
  store i32 %9700, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %600) #5
  br label %9701

9701:                                             ; preds = %9697, %9693
  call void @llvm.lifetime.end.p0(i64 24, ptr %600) #5
  br label %12015

9702:                                             ; preds = %9643
  %9703 = landingpad { ptr, i32 }
          cleanup
  %9704 = extractvalue { ptr, i32 } %9703, 0
  store ptr %9704, ptr %5, align 8
  %9705 = extractvalue { ptr, i32 } %9703, 1
  store i32 %9705, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %601) #5
  br label %12015

9706:                                             ; preds = %9651
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9707 unwind label %1026

9707:                                             ; preds = %9706
  call void @llvm.lifetime.start.p0(i64 1, ptr %602) #5
  store i8 0, ptr %602, align 1, !tbaa !9
  %9708 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %9709 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9708, ptr noundef nonnull align 1 dereferenceable(1) %602)
          to label %9710 unwind label %9743

9710:                                             ; preds = %9707
  call void @llvm.lifetime.end.p0(i64 1, ptr %602) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9711 unwind label %1026

9711:                                             ; preds = %9710
  call void @llvm.lifetime.start.p0(i64 24, ptr %603) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %603, i32 noundef 128)
          to label %9712 unwind label %9747

9712:                                             ; preds = %9711
  %9713 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %9714 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9713, ptr noundef nonnull align 8 dereferenceable(24) %603)
          to label %9715 unwind label %9751

9715:                                             ; preds = %9712
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %603) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %603) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %604) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %605) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %605, i32 noundef 59)
          to label %9716 unwind label %9756

9716:                                             ; preds = %9715
  %9717 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %605)
          to label %9718 unwind label %9760

9718:                                             ; preds = %9716
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %604, ptr noundef nonnull align 1 dereferenceable(1) %9717)
          to label %9719 unwind label %9760

9719:                                             ; preds = %9718
  %9720 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %9721 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9720, ptr noundef nonnull align 8 dereferenceable(24) %604)
          to label %9722 unwind label %9764

9722:                                             ; preds = %9719
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %604) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %605) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %605) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %604) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %606) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %606, i32 noundef 3)
          to label %9723 unwind label %9770

9723:                                             ; preds = %9722
  %9724 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %9725 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9724, ptr noundef nonnull align 8 dereferenceable(24) %606)
          to label %9726 unwind label %9774

9726:                                             ; preds = %9723
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %606) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %606) #5
  %9727 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %9728 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9727, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %9729 unwind label %1026

9729:                                             ; preds = %9726
  call void @llvm.lifetime.start.p0(i64 1, ptr %607) #5
  store i8 1, ptr %607, align 1, !tbaa !9
  %9730 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %9731 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9730, ptr noundef nonnull align 1 dereferenceable(1) %607)
          to label %9732 unwind label %9779

9732:                                             ; preds = %9729
  call void @llvm.lifetime.end.p0(i64 1, ptr %607) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9733 unwind label %1026

9733:                                             ; preds = %9732
  br label %9734

9734:                                             ; preds = %9742, %9733
  %9735 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %9736 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %9735)
          to label %9737 unwind label %1026

9737:                                             ; preds = %9734
  %9738 = load i8, ptr %9736, align 1, !tbaa !9, !range !11, !noundef !12
  %9739 = trunc i8 %9738 to i1
  %9740 = xor i1 %9739, true
  br i1 %9740, label %9741, label %9783

9741:                                             ; preds = %9737
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9742 unwind label %1026

9742:                                             ; preds = %9741
  br label %9734, !llvm.loop !130

9743:                                             ; preds = %9707
  %9744 = landingpad { ptr, i32 }
          cleanup
  %9745 = extractvalue { ptr, i32 } %9744, 0
  store ptr %9745, ptr %5, align 8
  %9746 = extractvalue { ptr, i32 } %9744, 1
  store i32 %9746, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %602) #5
  br label %12015

9747:                                             ; preds = %9711
  %9748 = landingpad { ptr, i32 }
          cleanup
  %9749 = extractvalue { ptr, i32 } %9748, 0
  store ptr %9749, ptr %5, align 8
  %9750 = extractvalue { ptr, i32 } %9748, 1
  store i32 %9750, ptr %6, align 4
  br label %9755

9751:                                             ; preds = %9712
  %9752 = landingpad { ptr, i32 }
          cleanup
  %9753 = extractvalue { ptr, i32 } %9752, 0
  store ptr %9753, ptr %5, align 8
  %9754 = extractvalue { ptr, i32 } %9752, 1
  store i32 %9754, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %603) #5
  br label %9755

9755:                                             ; preds = %9751, %9747
  call void @llvm.lifetime.end.p0(i64 24, ptr %603) #5
  br label %12015

9756:                                             ; preds = %9715
  %9757 = landingpad { ptr, i32 }
          cleanup
  %9758 = extractvalue { ptr, i32 } %9757, 0
  store ptr %9758, ptr %5, align 8
  %9759 = extractvalue { ptr, i32 } %9757, 1
  store i32 %9759, ptr %6, align 4
  br label %9769

9760:                                             ; preds = %9718, %9716
  %9761 = landingpad { ptr, i32 }
          cleanup
  %9762 = extractvalue { ptr, i32 } %9761, 0
  store ptr %9762, ptr %5, align 8
  %9763 = extractvalue { ptr, i32 } %9761, 1
  store i32 %9763, ptr %6, align 4
  br label %9768

9764:                                             ; preds = %9719
  %9765 = landingpad { ptr, i32 }
          cleanup
  %9766 = extractvalue { ptr, i32 } %9765, 0
  store ptr %9766, ptr %5, align 8
  %9767 = extractvalue { ptr, i32 } %9765, 1
  store i32 %9767, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %604) #5
  br label %9768

9768:                                             ; preds = %9764, %9760
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %605) #5
  br label %9769

9769:                                             ; preds = %9768, %9756
  call void @llvm.lifetime.end.p0(i64 24, ptr %605) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %604) #5
  br label %12015

9770:                                             ; preds = %9722
  %9771 = landingpad { ptr, i32 }
          cleanup
  %9772 = extractvalue { ptr, i32 } %9771, 0
  store ptr %9772, ptr %5, align 8
  %9773 = extractvalue { ptr, i32 } %9771, 1
  store i32 %9773, ptr %6, align 4
  br label %9778

9774:                                             ; preds = %9723
  %9775 = landingpad { ptr, i32 }
          cleanup
  %9776 = extractvalue { ptr, i32 } %9775, 0
  store ptr %9776, ptr %5, align 8
  %9777 = extractvalue { ptr, i32 } %9775, 1
  store i32 %9777, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %606) #5
  br label %9778

9778:                                             ; preds = %9774, %9770
  call void @llvm.lifetime.end.p0(i64 24, ptr %606) #5
  br label %12015

9779:                                             ; preds = %9729
  %9780 = landingpad { ptr, i32 }
          cleanup
  %9781 = extractvalue { ptr, i32 } %9780, 0
  store ptr %9781, ptr %5, align 8
  %9782 = extractvalue { ptr, i32 } %9780, 1
  store i32 %9782, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %607) #5
  br label %12015

9783:                                             ; preds = %9737
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9784 unwind label %1026

9784:                                             ; preds = %9783
  call void @llvm.lifetime.start.p0(i64 1, ptr %608) #5
  store i8 0, ptr %608, align 1, !tbaa !9
  %9785 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %9786 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9785, ptr noundef nonnull align 1 dereferenceable(1) %608)
          to label %9787 unwind label %9822

9787:                                             ; preds = %9784
  call void @llvm.lifetime.end.p0(i64 1, ptr %608) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9788 unwind label %1026

9788:                                             ; preds = %9787
  call void @llvm.lifetime.start.p0(i64 24, ptr %609) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %609, i32 noundef 32)
          to label %9789 unwind label %9826

9789:                                             ; preds = %9788
  %9790 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %9791 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9790, ptr noundef nonnull align 8 dereferenceable(24) %609)
          to label %9792 unwind label %9830

9792:                                             ; preds = %9789
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %609) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %609) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %610) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %611) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %611, i32 noundef -37)
          to label %9793 unwind label %9835

9793:                                             ; preds = %9792
  %9794 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %611)
          to label %9795 unwind label %9839

9795:                                             ; preds = %9793
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %610, ptr noundef nonnull align 1 dereferenceable(1) %9794)
          to label %9796 unwind label %9839

9796:                                             ; preds = %9795
  %9797 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %9798 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9797, ptr noundef nonnull align 8 dereferenceable(24) %610)
          to label %9799 unwind label %9843

9799:                                             ; preds = %9796
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %610) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %611) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %611) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %610) #5
  %9800 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 7
  %9801 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %9800)
          to label %9802 unwind label %1026

9802:                                             ; preds = %9799
  %9803 = load i8, ptr %9801, align 1, !tbaa !9, !range !11, !noundef !12
  %9804 = trunc i8 %9803 to i1
  br i1 %9804, label %9876, label %9805

9805:                                             ; preds = %9802
  call void @llvm.lifetime.start.p0(i64 24, ptr %612) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %612, i32 noundef -31)
          to label %9806 unwind label %9849

9806:                                             ; preds = %9805
  %9807 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %612)
          to label %9808 unwind label %9853

9808:                                             ; preds = %9806
  %9809 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %9, ptr noundef nonnull align 1 dereferenceable(1) %9807)
          to label %9810 unwind label %9853

9810:                                             ; preds = %9808
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %612) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %612) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %613) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %613, i32 noundef -30)
          to label %9811 unwind label %9858

9811:                                             ; preds = %9810
  %9812 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %613)
          to label %9813 unwind label %9862

9813:                                             ; preds = %9811
  %9814 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %10, ptr noundef nonnull align 1 dereferenceable(1) %9812)
          to label %9815 unwind label %9862

9815:                                             ; preds = %9813
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %613) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %613) #5
  %9816 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 6)
          to label %9817 unwind label %1026

9817:                                             ; preds = %9815
  call void @llvm.lifetime.start.p0(i64 24, ptr %614) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %614, i32 noundef 6)
          to label %9818 unwind label %9867

9818:                                             ; preds = %9817
  %9819 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %9820 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9819, ptr noundef nonnull align 8 dereferenceable(24) %614)
          to label %9821 unwind label %9871

9821:                                             ; preds = %9818
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %614) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %614) #5
  br label %9920

9822:                                             ; preds = %9784
  %9823 = landingpad { ptr, i32 }
          cleanup
  %9824 = extractvalue { ptr, i32 } %9823, 0
  store ptr %9824, ptr %5, align 8
  %9825 = extractvalue { ptr, i32 } %9823, 1
  store i32 %9825, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %608) #5
  br label %12015

9826:                                             ; preds = %9788
  %9827 = landingpad { ptr, i32 }
          cleanup
  %9828 = extractvalue { ptr, i32 } %9827, 0
  store ptr %9828, ptr %5, align 8
  %9829 = extractvalue { ptr, i32 } %9827, 1
  store i32 %9829, ptr %6, align 4
  br label %9834

9830:                                             ; preds = %9789
  %9831 = landingpad { ptr, i32 }
          cleanup
  %9832 = extractvalue { ptr, i32 } %9831, 0
  store ptr %9832, ptr %5, align 8
  %9833 = extractvalue { ptr, i32 } %9831, 1
  store i32 %9833, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %609) #5
  br label %9834

9834:                                             ; preds = %9830, %9826
  call void @llvm.lifetime.end.p0(i64 24, ptr %609) #5
  br label %12015

9835:                                             ; preds = %9792
  %9836 = landingpad { ptr, i32 }
          cleanup
  %9837 = extractvalue { ptr, i32 } %9836, 0
  store ptr %9837, ptr %5, align 8
  %9838 = extractvalue { ptr, i32 } %9836, 1
  store i32 %9838, ptr %6, align 4
  br label %9848

9839:                                             ; preds = %9795, %9793
  %9840 = landingpad { ptr, i32 }
          cleanup
  %9841 = extractvalue { ptr, i32 } %9840, 0
  store ptr %9841, ptr %5, align 8
  %9842 = extractvalue { ptr, i32 } %9840, 1
  store i32 %9842, ptr %6, align 4
  br label %9847

9843:                                             ; preds = %9796
  %9844 = landingpad { ptr, i32 }
          cleanup
  %9845 = extractvalue { ptr, i32 } %9844, 0
  store ptr %9845, ptr %5, align 8
  %9846 = extractvalue { ptr, i32 } %9844, 1
  store i32 %9846, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %610) #5
  br label %9847

9847:                                             ; preds = %9843, %9839
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %611) #5
  br label %9848

9848:                                             ; preds = %9847, %9835
  call void @llvm.lifetime.end.p0(i64 24, ptr %611) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %610) #5
  br label %12015

9849:                                             ; preds = %9805
  %9850 = landingpad { ptr, i32 }
          cleanup
  %9851 = extractvalue { ptr, i32 } %9850, 0
  store ptr %9851, ptr %5, align 8
  %9852 = extractvalue { ptr, i32 } %9850, 1
  store i32 %9852, ptr %6, align 4
  br label %9857

9853:                                             ; preds = %9808, %9806
  %9854 = landingpad { ptr, i32 }
          cleanup
  %9855 = extractvalue { ptr, i32 } %9854, 0
  store ptr %9855, ptr %5, align 8
  %9856 = extractvalue { ptr, i32 } %9854, 1
  store i32 %9856, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %612) #5
  br label %9857

9857:                                             ; preds = %9853, %9849
  call void @llvm.lifetime.end.p0(i64 24, ptr %612) #5
  br label %12015

9858:                                             ; preds = %9810
  %9859 = landingpad { ptr, i32 }
          cleanup
  %9860 = extractvalue { ptr, i32 } %9859, 0
  store ptr %9860, ptr %5, align 8
  %9861 = extractvalue { ptr, i32 } %9859, 1
  store i32 %9861, ptr %6, align 4
  br label %9866

9862:                                             ; preds = %9813, %9811
  %9863 = landingpad { ptr, i32 }
          cleanup
  %9864 = extractvalue { ptr, i32 } %9863, 0
  store ptr %9864, ptr %5, align 8
  %9865 = extractvalue { ptr, i32 } %9863, 1
  store i32 %9865, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %613) #5
  br label %9866

9866:                                             ; preds = %9862, %9858
  call void @llvm.lifetime.end.p0(i64 24, ptr %613) #5
  br label %12015

9867:                                             ; preds = %9817
  %9868 = landingpad { ptr, i32 }
          cleanup
  %9869 = extractvalue { ptr, i32 } %9868, 0
  store ptr %9869, ptr %5, align 8
  %9870 = extractvalue { ptr, i32 } %9868, 1
  store i32 %9870, ptr %6, align 4
  br label %9875

9871:                                             ; preds = %9818
  %9872 = landingpad { ptr, i32 }
          cleanup
  %9873 = extractvalue { ptr, i32 } %9872, 0
  store ptr %9873, ptr %5, align 8
  %9874 = extractvalue { ptr, i32 } %9872, 1
  store i32 %9874, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %614) #5
  br label %9875

9875:                                             ; preds = %9871, %9867
  call void @llvm.lifetime.end.p0(i64 24, ptr %614) #5
  br label %12015

9876:                                             ; preds = %9802
  call void @llvm.lifetime.start.p0(i64 24, ptr %615) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %615, i32 noundef -33)
          to label %9877 unwind label %9893

9877:                                             ; preds = %9876
  %9878 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %615)
          to label %9879 unwind label %9897

9879:                                             ; preds = %9877
  %9880 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %9, ptr noundef nonnull align 1 dereferenceable(1) %9878)
          to label %9881 unwind label %9897

9881:                                             ; preds = %9879
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %615) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %615) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %616) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %616, i32 noundef -32)
          to label %9882 unwind label %9902

9882:                                             ; preds = %9881
  %9883 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %616)
          to label %9884 unwind label %9906

9884:                                             ; preds = %9882
  %9885 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %10, ptr noundef nonnull align 1 dereferenceable(1) %9883)
          to label %9886 unwind label %9906

9886:                                             ; preds = %9884
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %616) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %616) #5
  %9887 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 4)
          to label %9888 unwind label %1026

9888:                                             ; preds = %9886
  call void @llvm.lifetime.start.p0(i64 24, ptr %617) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %617, i32 noundef 4)
          to label %9889 unwind label %9911

9889:                                             ; preds = %9888
  %9890 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %9891 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9890, ptr noundef nonnull align 8 dereferenceable(24) %617)
          to label %9892 unwind label %9915

9892:                                             ; preds = %9889
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %617) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %617) #5
  br label %9920

9893:                                             ; preds = %9876
  %9894 = landingpad { ptr, i32 }
          cleanup
  %9895 = extractvalue { ptr, i32 } %9894, 0
  store ptr %9895, ptr %5, align 8
  %9896 = extractvalue { ptr, i32 } %9894, 1
  store i32 %9896, ptr %6, align 4
  br label %9901

9897:                                             ; preds = %9879, %9877
  %9898 = landingpad { ptr, i32 }
          cleanup
  %9899 = extractvalue { ptr, i32 } %9898, 0
  store ptr %9899, ptr %5, align 8
  %9900 = extractvalue { ptr, i32 } %9898, 1
  store i32 %9900, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %615) #5
  br label %9901

9901:                                             ; preds = %9897, %9893
  call void @llvm.lifetime.end.p0(i64 24, ptr %615) #5
  br label %12015

9902:                                             ; preds = %9881
  %9903 = landingpad { ptr, i32 }
          cleanup
  %9904 = extractvalue { ptr, i32 } %9903, 0
  store ptr %9904, ptr %5, align 8
  %9905 = extractvalue { ptr, i32 } %9903, 1
  store i32 %9905, ptr %6, align 4
  br label %9910

9906:                                             ; preds = %9884, %9882
  %9907 = landingpad { ptr, i32 }
          cleanup
  %9908 = extractvalue { ptr, i32 } %9907, 0
  store ptr %9908, ptr %5, align 8
  %9909 = extractvalue { ptr, i32 } %9907, 1
  store i32 %9909, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %616) #5
  br label %9910

9910:                                             ; preds = %9906, %9902
  call void @llvm.lifetime.end.p0(i64 24, ptr %616) #5
  br label %12015

9911:                                             ; preds = %9888
  %9912 = landingpad { ptr, i32 }
          cleanup
  %9913 = extractvalue { ptr, i32 } %9912, 0
  store ptr %9913, ptr %5, align 8
  %9914 = extractvalue { ptr, i32 } %9912, 1
  store i32 %9914, ptr %6, align 4
  br label %9919

9915:                                             ; preds = %9889
  %9916 = landingpad { ptr, i32 }
          cleanup
  %9917 = extractvalue { ptr, i32 } %9916, 0
  store ptr %9917, ptr %5, align 8
  %9918 = extractvalue { ptr, i32 } %9916, 1
  store i32 %9918, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %617) #5
  br label %9919

9919:                                             ; preds = %9915, %9911
  call void @llvm.lifetime.end.p0(i64 24, ptr %617) #5
  br label %12015

9920:                                             ; preds = %9892, %9821
  call void @llvm.lifetime.start.p0(i64 24, ptr %618) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %618, i32 noundef 3)
          to label %9921 unwind label %9941

9921:                                             ; preds = %9920
  %9922 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %9923 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9922, ptr noundef nonnull align 8 dereferenceable(24) %618)
          to label %9924 unwind label %9945

9924:                                             ; preds = %9921
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %618) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %618) #5
  %9925 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %9926 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9925, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %9927 unwind label %1026

9927:                                             ; preds = %9924
  call void @llvm.lifetime.start.p0(i64 1, ptr %619) #5
  store i8 1, ptr %619, align 1, !tbaa !9
  %9928 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %9929 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9928, ptr noundef nonnull align 1 dereferenceable(1) %619)
          to label %9930 unwind label %9950

9930:                                             ; preds = %9927
  call void @llvm.lifetime.end.p0(i64 1, ptr %619) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9931 unwind label %1026

9931:                                             ; preds = %9930
  br label %9932

9932:                                             ; preds = %9940, %9931
  %9933 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %9934 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %9933)
          to label %9935 unwind label %1026

9935:                                             ; preds = %9932
  %9936 = load i8, ptr %9934, align 1, !tbaa !9, !range !11, !noundef !12
  %9937 = trunc i8 %9936 to i1
  %9938 = xor i1 %9937, true
  br i1 %9938, label %9939, label %9954

9939:                                             ; preds = %9935
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9940 unwind label %1026

9940:                                             ; preds = %9939
  br label %9932, !llvm.loop !131

9941:                                             ; preds = %9920
  %9942 = landingpad { ptr, i32 }
          cleanup
  %9943 = extractvalue { ptr, i32 } %9942, 0
  store ptr %9943, ptr %5, align 8
  %9944 = extractvalue { ptr, i32 } %9942, 1
  store i32 %9944, ptr %6, align 4
  br label %9949

9945:                                             ; preds = %9921
  %9946 = landingpad { ptr, i32 }
          cleanup
  %9947 = extractvalue { ptr, i32 } %9946, 0
  store ptr %9947, ptr %5, align 8
  %9948 = extractvalue { ptr, i32 } %9946, 1
  store i32 %9948, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %618) #5
  br label %9949

9949:                                             ; preds = %9945, %9941
  call void @llvm.lifetime.end.p0(i64 24, ptr %618) #5
  br label %12015

9950:                                             ; preds = %9927
  %9951 = landingpad { ptr, i32 }
          cleanup
  %9952 = extractvalue { ptr, i32 } %9951, 0
  store ptr %9952, ptr %5, align 8
  %9953 = extractvalue { ptr, i32 } %9951, 1
  store i32 %9953, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %619) #5
  br label %12015

9954:                                             ; preds = %9935
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9955 unwind label %1026

9955:                                             ; preds = %9954
  call void @llvm.lifetime.start.p0(i64 1, ptr %620) #5
  store i8 0, ptr %620, align 1, !tbaa !9
  %9956 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %9957 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9956, ptr noundef nonnull align 1 dereferenceable(1) %620)
          to label %9958 unwind label %9991

9958:                                             ; preds = %9955
  call void @llvm.lifetime.end.p0(i64 1, ptr %620) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9959 unwind label %1026

9959:                                             ; preds = %9958
  call void @llvm.lifetime.start.p0(i64 24, ptr %621) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %621, i32 noundef 2)
          to label %9960 unwind label %9995

9960:                                             ; preds = %9959
  %9961 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %9962 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9961, ptr noundef nonnull align 8 dereferenceable(24) %621)
          to label %9963 unwind label %9999

9963:                                             ; preds = %9960
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %621) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %621) #5
  %9964 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %9965 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9964, ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %9966 unwind label %1026

9966:                                             ; preds = %9963
  call void @llvm.lifetime.start.p0(i64 24, ptr %622) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %622, i32 noundef 1)
          to label %9967 unwind label %10004

9967:                                             ; preds = %9966
  %9968 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %9969 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9968, ptr noundef nonnull align 8 dereferenceable(24) %622)
          to label %9970 unwind label %10008

9970:                                             ; preds = %9967
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %622) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %622) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %623) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %623, i32 noundef 3)
          to label %9971 unwind label %10013

9971:                                             ; preds = %9970
  %9972 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %9973 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9972, ptr noundef nonnull align 8 dereferenceable(24) %623)
          to label %9974 unwind label %10017

9974:                                             ; preds = %9971
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %623) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %623) #5
  %9975 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %9976 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %9975, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %9977 unwind label %1026

9977:                                             ; preds = %9974
  call void @llvm.lifetime.start.p0(i64 1, ptr %624) #5
  store i8 1, ptr %624, align 1, !tbaa !9
  %9978 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %9979 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %9978, ptr noundef nonnull align 1 dereferenceable(1) %624)
          to label %9980 unwind label %10022

9980:                                             ; preds = %9977
  call void @llvm.lifetime.end.p0(i64 1, ptr %624) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9981 unwind label %1026

9981:                                             ; preds = %9980
  br label %9982

9982:                                             ; preds = %9990, %9981
  %9983 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %9984 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %9983)
          to label %9985 unwind label %1026

9985:                                             ; preds = %9982
  %9986 = load i8, ptr %9984, align 1, !tbaa !9, !range !11, !noundef !12
  %9987 = trunc i8 %9986 to i1
  %9988 = xor i1 %9987, true
  br i1 %9988, label %9989, label %10026

9989:                                             ; preds = %9985
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %9990 unwind label %1026

9990:                                             ; preds = %9989
  br label %9982, !llvm.loop !132

9991:                                             ; preds = %9955
  %9992 = landingpad { ptr, i32 }
          cleanup
  %9993 = extractvalue { ptr, i32 } %9992, 0
  store ptr %9993, ptr %5, align 8
  %9994 = extractvalue { ptr, i32 } %9992, 1
  store i32 %9994, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %620) #5
  br label %12015

9995:                                             ; preds = %9959
  %9996 = landingpad { ptr, i32 }
          cleanup
  %9997 = extractvalue { ptr, i32 } %9996, 0
  store ptr %9997, ptr %5, align 8
  %9998 = extractvalue { ptr, i32 } %9996, 1
  store i32 %9998, ptr %6, align 4
  br label %10003

9999:                                             ; preds = %9960
  %10000 = landingpad { ptr, i32 }
          cleanup
  %10001 = extractvalue { ptr, i32 } %10000, 0
  store ptr %10001, ptr %5, align 8
  %10002 = extractvalue { ptr, i32 } %10000, 1
  store i32 %10002, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %621) #5
  br label %10003

10003:                                            ; preds = %9999, %9995
  call void @llvm.lifetime.end.p0(i64 24, ptr %621) #5
  br label %12015

10004:                                            ; preds = %9966
  %10005 = landingpad { ptr, i32 }
          cleanup
  %10006 = extractvalue { ptr, i32 } %10005, 0
  store ptr %10006, ptr %5, align 8
  %10007 = extractvalue { ptr, i32 } %10005, 1
  store i32 %10007, ptr %6, align 4
  br label %10012

10008:                                            ; preds = %9967
  %10009 = landingpad { ptr, i32 }
          cleanup
  %10010 = extractvalue { ptr, i32 } %10009, 0
  store ptr %10010, ptr %5, align 8
  %10011 = extractvalue { ptr, i32 } %10009, 1
  store i32 %10011, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %622) #5
  br label %10012

10012:                                            ; preds = %10008, %10004
  call void @llvm.lifetime.end.p0(i64 24, ptr %622) #5
  br label %12015

10013:                                            ; preds = %9970
  %10014 = landingpad { ptr, i32 }
          cleanup
  %10015 = extractvalue { ptr, i32 } %10014, 0
  store ptr %10015, ptr %5, align 8
  %10016 = extractvalue { ptr, i32 } %10014, 1
  store i32 %10016, ptr %6, align 4
  br label %10021

10017:                                            ; preds = %9971
  %10018 = landingpad { ptr, i32 }
          cleanup
  %10019 = extractvalue { ptr, i32 } %10018, 0
  store ptr %10019, ptr %5, align 8
  %10020 = extractvalue { ptr, i32 } %10018, 1
  store i32 %10020, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %623) #5
  br label %10021

10021:                                            ; preds = %10017, %10013
  call void @llvm.lifetime.end.p0(i64 24, ptr %623) #5
  br label %12015

10022:                                            ; preds = %9977
  %10023 = landingpad { ptr, i32 }
          cleanup
  %10024 = extractvalue { ptr, i32 } %10023, 0
  store ptr %10024, ptr %5, align 8
  %10025 = extractvalue { ptr, i32 } %10023, 1
  store i32 %10025, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %624) #5
  br label %12015

10026:                                            ; preds = %9985
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10027 unwind label %1026

10027:                                            ; preds = %10026
  call void @llvm.lifetime.start.p0(i64 1, ptr %625) #5
  store i8 0, ptr %625, align 1, !tbaa !9
  %10028 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %10029 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10028, ptr noundef nonnull align 1 dereferenceable(1) %625)
          to label %10030 unwind label %10063

10030:                                            ; preds = %10027
  call void @llvm.lifetime.end.p0(i64 1, ptr %625) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10031 unwind label %1026

10031:                                            ; preds = %10030
  call void @llvm.lifetime.start.p0(i64 24, ptr %626) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %626, i32 noundef 20)
          to label %10032 unwind label %10067

10032:                                            ; preds = %10031
  %10033 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %10034 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10033, ptr noundef nonnull align 8 dereferenceable(24) %626)
          to label %10035 unwind label %10071

10035:                                            ; preds = %10032
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %626) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %626) #5
  %10036 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %10037 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10036, ptr noundef nonnull align 8 dereferenceable(24) %10)
          to label %10038 unwind label %1026

10038:                                            ; preds = %10035
  call void @llvm.lifetime.start.p0(i64 24, ptr %627) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %627, i32 noundef 4)
          to label %10039 unwind label %10076

10039:                                            ; preds = %10038
  %10040 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %10041 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10040, ptr noundef nonnull align 8 dereferenceable(24) %627)
          to label %10042 unwind label %10080

10042:                                            ; preds = %10039
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %627) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %627) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %628) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %628, i32 noundef 3)
          to label %10043 unwind label %10085

10043:                                            ; preds = %10042
  %10044 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %10045 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10044, ptr noundef nonnull align 8 dereferenceable(24) %628)
          to label %10046 unwind label %10089

10046:                                            ; preds = %10043
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %628) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %628) #5
  %10047 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %10048 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10047, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %10049 unwind label %1026

10049:                                            ; preds = %10046
  call void @llvm.lifetime.start.p0(i64 1, ptr %629) #5
  store i8 1, ptr %629, align 1, !tbaa !9
  %10050 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %10051 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10050, ptr noundef nonnull align 1 dereferenceable(1) %629)
          to label %10052 unwind label %10094

10052:                                            ; preds = %10049
  call void @llvm.lifetime.end.p0(i64 1, ptr %629) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10053 unwind label %1026

10053:                                            ; preds = %10052
  br label %10054

10054:                                            ; preds = %10062, %10053
  %10055 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %10056 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %10055)
          to label %10057 unwind label %1026

10057:                                            ; preds = %10054
  %10058 = load i8, ptr %10056, align 1, !tbaa !9, !range !11, !noundef !12
  %10059 = trunc i8 %10058 to i1
  %10060 = xor i1 %10059, true
  br i1 %10060, label %10061, label %10098

10061:                                            ; preds = %10057
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10062 unwind label %1026

10062:                                            ; preds = %10061
  br label %10054, !llvm.loop !133

10063:                                            ; preds = %10027
  %10064 = landingpad { ptr, i32 }
          cleanup
  %10065 = extractvalue { ptr, i32 } %10064, 0
  store ptr %10065, ptr %5, align 8
  %10066 = extractvalue { ptr, i32 } %10064, 1
  store i32 %10066, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %625) #5
  br label %12015

10067:                                            ; preds = %10031
  %10068 = landingpad { ptr, i32 }
          cleanup
  %10069 = extractvalue { ptr, i32 } %10068, 0
  store ptr %10069, ptr %5, align 8
  %10070 = extractvalue { ptr, i32 } %10068, 1
  store i32 %10070, ptr %6, align 4
  br label %10075

10071:                                            ; preds = %10032
  %10072 = landingpad { ptr, i32 }
          cleanup
  %10073 = extractvalue { ptr, i32 } %10072, 0
  store ptr %10073, ptr %5, align 8
  %10074 = extractvalue { ptr, i32 } %10072, 1
  store i32 %10074, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %626) #5
  br label %10075

10075:                                            ; preds = %10071, %10067
  call void @llvm.lifetime.end.p0(i64 24, ptr %626) #5
  br label %12015

10076:                                            ; preds = %10038
  %10077 = landingpad { ptr, i32 }
          cleanup
  %10078 = extractvalue { ptr, i32 } %10077, 0
  store ptr %10078, ptr %5, align 8
  %10079 = extractvalue { ptr, i32 } %10077, 1
  store i32 %10079, ptr %6, align 4
  br label %10084

10080:                                            ; preds = %10039
  %10081 = landingpad { ptr, i32 }
          cleanup
  %10082 = extractvalue { ptr, i32 } %10081, 0
  store ptr %10082, ptr %5, align 8
  %10083 = extractvalue { ptr, i32 } %10081, 1
  store i32 %10083, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %627) #5
  br label %10084

10084:                                            ; preds = %10080, %10076
  call void @llvm.lifetime.end.p0(i64 24, ptr %627) #5
  br label %12015

10085:                                            ; preds = %10042
  %10086 = landingpad { ptr, i32 }
          cleanup
  %10087 = extractvalue { ptr, i32 } %10086, 0
  store ptr %10087, ptr %5, align 8
  %10088 = extractvalue { ptr, i32 } %10086, 1
  store i32 %10088, ptr %6, align 4
  br label %10093

10089:                                            ; preds = %10043
  %10090 = landingpad { ptr, i32 }
          cleanup
  %10091 = extractvalue { ptr, i32 } %10090, 0
  store ptr %10091, ptr %5, align 8
  %10092 = extractvalue { ptr, i32 } %10090, 1
  store i32 %10092, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %628) #5
  br label %10093

10093:                                            ; preds = %10089, %10085
  call void @llvm.lifetime.end.p0(i64 24, ptr %628) #5
  br label %12015

10094:                                            ; preds = %10049
  %10095 = landingpad { ptr, i32 }
          cleanup
  %10096 = extractvalue { ptr, i32 } %10095, 0
  store ptr %10096, ptr %5, align 8
  %10097 = extractvalue { ptr, i32 } %10095, 1
  store i32 %10097, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %629) #5
  br label %12015

10098:                                            ; preds = %10057
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10099 unwind label %1026

10099:                                            ; preds = %10098
  call void @llvm.lifetime.start.p0(i64 1, ptr %630) #5
  store i8 0, ptr %630, align 1, !tbaa !9
  %10100 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %10101 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10100, ptr noundef nonnull align 1 dereferenceable(1) %630)
          to label %10102 unwind label %10135

10102:                                            ; preds = %10099
  call void @llvm.lifetime.end.p0(i64 1, ptr %630) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10103 unwind label %1026

10103:                                            ; preds = %10102
  call void @llvm.lifetime.start.p0(i64 24, ptr %631) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %631, i32 noundef 272)
          to label %10104 unwind label %10139

10104:                                            ; preds = %10103
  %10105 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %10106 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10105, ptr noundef nonnull align 8 dereferenceable(24) %631)
          to label %10107 unwind label %10143

10107:                                            ; preds = %10104
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %631) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %631) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %632) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %633) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %633, i32 noundef 0)
          to label %10108 unwind label %10148

10108:                                            ; preds = %10107
  %10109 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %633)
          to label %10110 unwind label %10152

10110:                                            ; preds = %10108
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %632, ptr noundef nonnull align 1 dereferenceable(1) %10109)
          to label %10111 unwind label %10152

10111:                                            ; preds = %10110
  %10112 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %10113 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10112, ptr noundef nonnull align 8 dereferenceable(24) %632)
          to label %10114 unwind label %10156

10114:                                            ; preds = %10111
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %632) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %633) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %633) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %632) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %634) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %634, i32 noundef 1)
          to label %10115 unwind label %10162

10115:                                            ; preds = %10114
  %10116 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %10117 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10116, ptr noundef nonnull align 8 dereferenceable(24) %634)
          to label %10118 unwind label %10166

10118:                                            ; preds = %10115
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %634) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %634) #5
  %10119 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %10120 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10119, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %10121 unwind label %1026

10121:                                            ; preds = %10118
  call void @llvm.lifetime.start.p0(i64 1, ptr %635) #5
  store i8 1, ptr %635, align 1, !tbaa !9
  %10122 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %10123 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10122, ptr noundef nonnull align 1 dereferenceable(1) %635)
          to label %10124 unwind label %10171

10124:                                            ; preds = %10121
  call void @llvm.lifetime.end.p0(i64 1, ptr %635) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10125 unwind label %1026

10125:                                            ; preds = %10124
  br label %10126

10126:                                            ; preds = %10134, %10125
  %10127 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %10128 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %10127)
          to label %10129 unwind label %1026

10129:                                            ; preds = %10126
  %10130 = load i8, ptr %10128, align 1, !tbaa !9, !range !11, !noundef !12
  %10131 = trunc i8 %10130 to i1
  %10132 = xor i1 %10131, true
  br i1 %10132, label %10133, label %10175

10133:                                            ; preds = %10129
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10134 unwind label %1026

10134:                                            ; preds = %10133
  br label %10126, !llvm.loop !134

10135:                                            ; preds = %10099
  %10136 = landingpad { ptr, i32 }
          cleanup
  %10137 = extractvalue { ptr, i32 } %10136, 0
  store ptr %10137, ptr %5, align 8
  %10138 = extractvalue { ptr, i32 } %10136, 1
  store i32 %10138, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %630) #5
  br label %12015

10139:                                            ; preds = %10103
  %10140 = landingpad { ptr, i32 }
          cleanup
  %10141 = extractvalue { ptr, i32 } %10140, 0
  store ptr %10141, ptr %5, align 8
  %10142 = extractvalue { ptr, i32 } %10140, 1
  store i32 %10142, ptr %6, align 4
  br label %10147

10143:                                            ; preds = %10104
  %10144 = landingpad { ptr, i32 }
          cleanup
  %10145 = extractvalue { ptr, i32 } %10144, 0
  store ptr %10145, ptr %5, align 8
  %10146 = extractvalue { ptr, i32 } %10144, 1
  store i32 %10146, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %631) #5
  br label %10147

10147:                                            ; preds = %10143, %10139
  call void @llvm.lifetime.end.p0(i64 24, ptr %631) #5
  br label %12015

10148:                                            ; preds = %10107
  %10149 = landingpad { ptr, i32 }
          cleanup
  %10150 = extractvalue { ptr, i32 } %10149, 0
  store ptr %10150, ptr %5, align 8
  %10151 = extractvalue { ptr, i32 } %10149, 1
  store i32 %10151, ptr %6, align 4
  br label %10161

10152:                                            ; preds = %10110, %10108
  %10153 = landingpad { ptr, i32 }
          cleanup
  %10154 = extractvalue { ptr, i32 } %10153, 0
  store ptr %10154, ptr %5, align 8
  %10155 = extractvalue { ptr, i32 } %10153, 1
  store i32 %10155, ptr %6, align 4
  br label %10160

10156:                                            ; preds = %10111
  %10157 = landingpad { ptr, i32 }
          cleanup
  %10158 = extractvalue { ptr, i32 } %10157, 0
  store ptr %10158, ptr %5, align 8
  %10159 = extractvalue { ptr, i32 } %10157, 1
  store i32 %10159, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %632) #5
  br label %10160

10160:                                            ; preds = %10156, %10152
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %633) #5
  br label %10161

10161:                                            ; preds = %10160, %10148
  call void @llvm.lifetime.end.p0(i64 24, ptr %633) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %632) #5
  br label %12015

10162:                                            ; preds = %10114
  %10163 = landingpad { ptr, i32 }
          cleanup
  %10164 = extractvalue { ptr, i32 } %10163, 0
  store ptr %10164, ptr %5, align 8
  %10165 = extractvalue { ptr, i32 } %10163, 1
  store i32 %10165, ptr %6, align 4
  br label %10170

10166:                                            ; preds = %10115
  %10167 = landingpad { ptr, i32 }
          cleanup
  %10168 = extractvalue { ptr, i32 } %10167, 0
  store ptr %10168, ptr %5, align 8
  %10169 = extractvalue { ptr, i32 } %10167, 1
  store i32 %10169, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %634) #5
  br label %10170

10170:                                            ; preds = %10166, %10162
  call void @llvm.lifetime.end.p0(i64 24, ptr %634) #5
  br label %12015

10171:                                            ; preds = %10121
  %10172 = landingpad { ptr, i32 }
          cleanup
  %10173 = extractvalue { ptr, i32 } %10172, 0
  store ptr %10173, ptr %5, align 8
  %10174 = extractvalue { ptr, i32 } %10172, 1
  store i32 %10174, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %635) #5
  br label %12015

10175:                                            ; preds = %10129
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10176 unwind label %1026

10176:                                            ; preds = %10175
  call void @llvm.lifetime.start.p0(i64 1, ptr %636) #5
  store i8 0, ptr %636, align 1, !tbaa !9
  %10177 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %10178 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10177, ptr noundef nonnull align 1 dereferenceable(1) %636)
          to label %10179 unwind label %10214

10179:                                            ; preds = %10176
  call void @llvm.lifetime.end.p0(i64 1, ptr %636) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10180 unwind label %1026

10180:                                            ; preds = %10179
  %10181 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %32, i32 noundef -2)
          to label %10182 unwind label %1026

10182:                                            ; preds = %10180
  call void @llvm.lifetime.start.p0(i64 24, ptr %637) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %637, i32 noundef -8192)
          to label %10183 unwind label %10218

10183:                                            ; preds = %10182
  %10184 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %10185 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10184, ptr noundef nonnull align 8 dereferenceable(24) %637)
          to label %10186 unwind label %10222

10186:                                            ; preds = %10183
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %637) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %637) #5
  %10187 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %10188 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10187, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %10189 unwind label %1026

10189:                                            ; preds = %10186
  call void @llvm.lifetime.start.p0(i64 1, ptr %638) #5
  store i8 1, ptr %638, align 1, !tbaa !9
  %10190 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %10191 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10190, ptr noundef nonnull align 1 dereferenceable(1) %638)
          to label %10192 unwind label %10227

10192:                                            ; preds = %10189
  call void @llvm.lifetime.end.p0(i64 1, ptr %638) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %639) #5
  store i8 1, ptr %639, align 1, !tbaa !9
  %10193 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %10194 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10193, ptr noundef nonnull align 1 dereferenceable(1) %639)
          to label %10195 unwind label %10231

10195:                                            ; preds = %10192
  call void @llvm.lifetime.end.p0(i64 1, ptr %639) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10196 unwind label %1026

10196:                                            ; preds = %10195
  br label %10197

10197:                                            ; preds = %10240, %10196
  br label %10198

10198:                                            ; preds = %10197
  %10199 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 4
  %10200 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %10199)
          to label %10201 unwind label %1026

10201:                                            ; preds = %10198
  %10202 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(24) %10200)
          to label %10203 unwind label %1026

10203:                                            ; preds = %10201
  call void @llvm.lifetime.start.p0(i64 1, ptr %640) #5
  store i8 0, ptr %640, align 1, !tbaa !9
  %10204 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %10205 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10204, ptr noundef nonnull align 1 dereferenceable(1) %640)
          to label %10206 unwind label %10235

10206:                                            ; preds = %10203
  call void @llvm.lifetime.end.p0(i64 1, ptr %640) #5
  %10207 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %10208 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %10207)
          to label %10209 unwind label %1026

10209:                                            ; preds = %10206
  %10210 = load i8, ptr %10208, align 1, !tbaa !9, !range !11, !noundef !12
  %10211 = trunc i8 %10210 to i1
  br i1 %10211, label %10212, label %10239

10212:                                            ; preds = %10209
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10213 unwind label %1026

10213:                                            ; preds = %10212
  br label %10241

10214:                                            ; preds = %10176
  %10215 = landingpad { ptr, i32 }
          cleanup
  %10216 = extractvalue { ptr, i32 } %10215, 0
  store ptr %10216, ptr %5, align 8
  %10217 = extractvalue { ptr, i32 } %10215, 1
  store i32 %10217, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %636) #5
  br label %12015

10218:                                            ; preds = %10182
  %10219 = landingpad { ptr, i32 }
          cleanup
  %10220 = extractvalue { ptr, i32 } %10219, 0
  store ptr %10220, ptr %5, align 8
  %10221 = extractvalue { ptr, i32 } %10219, 1
  store i32 %10221, ptr %6, align 4
  br label %10226

10222:                                            ; preds = %10183
  %10223 = landingpad { ptr, i32 }
          cleanup
  %10224 = extractvalue { ptr, i32 } %10223, 0
  store ptr %10224, ptr %5, align 8
  %10225 = extractvalue { ptr, i32 } %10223, 1
  store i32 %10225, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %637) #5
  br label %10226

10226:                                            ; preds = %10222, %10218
  call void @llvm.lifetime.end.p0(i64 24, ptr %637) #5
  br label %12015

10227:                                            ; preds = %10189
  %10228 = landingpad { ptr, i32 }
          cleanup
  %10229 = extractvalue { ptr, i32 } %10228, 0
  store ptr %10229, ptr %5, align 8
  %10230 = extractvalue { ptr, i32 } %10228, 1
  store i32 %10230, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %638) #5
  br label %12015

10231:                                            ; preds = %10192
  %10232 = landingpad { ptr, i32 }
          cleanup
  %10233 = extractvalue { ptr, i32 } %10232, 0
  store ptr %10233, ptr %5, align 8
  %10234 = extractvalue { ptr, i32 } %10232, 1
  store i32 %10234, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %639) #5
  br label %12015

10235:                                            ; preds = %10203
  %10236 = landingpad { ptr, i32 }
          cleanup
  %10237 = extractvalue { ptr, i32 } %10236, 0
  store ptr %10237, ptr %5, align 8
  %10238 = extractvalue { ptr, i32 } %10236, 1
  store i32 %10238, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %640) #5
  br label %12015

10239:                                            ; preds = %10209
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10240 unwind label %1026

10240:                                            ; preds = %10239
  br label %10197, !llvm.loop !135

10241:                                            ; preds = %10213
  %10242 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 13, i32 noundef 7)
          to label %10243 unwind label %1026

10243:                                            ; preds = %10241
  %10244 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %27, ptr noundef nonnull align 8 dereferenceable(28) %10242)
          to label %10245 unwind label %1026

10245:                                            ; preds = %10243
  call void @llvm.lifetime.start.p0(i64 24, ptr %641) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %642) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %642, i32 noundef 0)
          to label %10246 unwind label %10281

10246:                                            ; preds = %10245
  %10247 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %642)
          to label %10248 unwind label %10285

10248:                                            ; preds = %10246
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %641, ptr noundef nonnull align 1 dereferenceable(1) %10247)
          to label %10249 unwind label %10285

10249:                                            ; preds = %10248
  %10250 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %10251 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10250, ptr noundef nonnull align 8 dereferenceable(24) %641)
          to label %10252 unwind label %10289

10252:                                            ; preds = %10249
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %641) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %642) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %642) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %641) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %643) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %644) #5
  invoke void @_ZN5sc_dt6sc_intILi2EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %644, i32 noundef 0)
          to label %10253 unwind label %10295

10253:                                            ; preds = %10252
  %10254 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %644, ptr noundef nonnull align 8 dereferenceable(8) %18)
          to label %10255 unwind label %10299

10255:                                            ; preds = %10253
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %643, ptr noundef nonnull align 1 dereferenceable(1) %10254)
          to label %10256 unwind label %10299

10256:                                            ; preds = %10255
  %10257 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %10258 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10257, ptr noundef nonnull align 8 dereferenceable(24) %643)
          to label %10259 unwind label %10303

10259:                                            ; preds = %10256
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %643) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %644) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %644) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %643) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %645) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %645, i32 noundef 22)
          to label %10260 unwind label %10309

10260:                                            ; preds = %10259
  %10261 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %10262 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10261, ptr noundef nonnull align 8 dereferenceable(24) %645)
          to label %10263 unwind label %10313

10263:                                            ; preds = %10260
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %645) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %645) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %646) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %646, i32 noundef -3)
          to label %10264 unwind label %10318

10264:                                            ; preds = %10263
  %10265 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %10266 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10265, ptr noundef nonnull align 8 dereferenceable(24) %646)
          to label %10267 unwind label %10322

10267:                                            ; preds = %10264
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %646) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %646) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %647) #5
  store i8 1, ptr %647, align 1, !tbaa !9
  %10268 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %10269 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10268, ptr noundef nonnull align 1 dereferenceable(1) %647)
          to label %10270 unwind label %10327

10270:                                            ; preds = %10267
  call void @llvm.lifetime.end.p0(i64 1, ptr %647) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10271 unwind label %1026

10271:                                            ; preds = %10270
  br label %10272

10272:                                            ; preds = %10280, %10271
  %10273 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %10274 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %10273)
          to label %10275 unwind label %1026

10275:                                            ; preds = %10272
  %10276 = load i8, ptr %10274, align 1, !tbaa !9, !range !11, !noundef !12
  %10277 = trunc i8 %10276 to i1
  %10278 = xor i1 %10277, true
  br i1 %10278, label %10279, label %10331

10279:                                            ; preds = %10275
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10280 unwind label %1026

10280:                                            ; preds = %10279
  br label %10272, !llvm.loop !136

10281:                                            ; preds = %10245
  %10282 = landingpad { ptr, i32 }
          cleanup
  %10283 = extractvalue { ptr, i32 } %10282, 0
  store ptr %10283, ptr %5, align 8
  %10284 = extractvalue { ptr, i32 } %10282, 1
  store i32 %10284, ptr %6, align 4
  br label %10294

10285:                                            ; preds = %10248, %10246
  %10286 = landingpad { ptr, i32 }
          cleanup
  %10287 = extractvalue { ptr, i32 } %10286, 0
  store ptr %10287, ptr %5, align 8
  %10288 = extractvalue { ptr, i32 } %10286, 1
  store i32 %10288, ptr %6, align 4
  br label %10293

10289:                                            ; preds = %10249
  %10290 = landingpad { ptr, i32 }
          cleanup
  %10291 = extractvalue { ptr, i32 } %10290, 0
  store ptr %10291, ptr %5, align 8
  %10292 = extractvalue { ptr, i32 } %10290, 1
  store i32 %10292, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %641) #5
  br label %10293

10293:                                            ; preds = %10289, %10285
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %642) #5
  br label %10294

10294:                                            ; preds = %10293, %10281
  call void @llvm.lifetime.end.p0(i64 24, ptr %642) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %641) #5
  br label %12015

10295:                                            ; preds = %10252
  %10296 = landingpad { ptr, i32 }
          cleanup
  %10297 = extractvalue { ptr, i32 } %10296, 0
  store ptr %10297, ptr %5, align 8
  %10298 = extractvalue { ptr, i32 } %10296, 1
  store i32 %10298, ptr %6, align 4
  br label %10308

10299:                                            ; preds = %10255, %10253
  %10300 = landingpad { ptr, i32 }
          cleanup
  %10301 = extractvalue { ptr, i32 } %10300, 0
  store ptr %10301, ptr %5, align 8
  %10302 = extractvalue { ptr, i32 } %10300, 1
  store i32 %10302, ptr %6, align 4
  br label %10307

10303:                                            ; preds = %10256
  %10304 = landingpad { ptr, i32 }
          cleanup
  %10305 = extractvalue { ptr, i32 } %10304, 0
  store ptr %10305, ptr %5, align 8
  %10306 = extractvalue { ptr, i32 } %10304, 1
  store i32 %10306, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %643) #5
  br label %10307

10307:                                            ; preds = %10303, %10299
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %644) #5
  br label %10308

10308:                                            ; preds = %10307, %10295
  call void @llvm.lifetime.end.p0(i64 24, ptr %644) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %643) #5
  br label %12015

10309:                                            ; preds = %10259
  %10310 = landingpad { ptr, i32 }
          cleanup
  %10311 = extractvalue { ptr, i32 } %10310, 0
  store ptr %10311, ptr %5, align 8
  %10312 = extractvalue { ptr, i32 } %10310, 1
  store i32 %10312, ptr %6, align 4
  br label %10317

10313:                                            ; preds = %10260
  %10314 = landingpad { ptr, i32 }
          cleanup
  %10315 = extractvalue { ptr, i32 } %10314, 0
  store ptr %10315, ptr %5, align 8
  %10316 = extractvalue { ptr, i32 } %10314, 1
  store i32 %10316, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %645) #5
  br label %10317

10317:                                            ; preds = %10313, %10309
  call void @llvm.lifetime.end.p0(i64 24, ptr %645) #5
  br label %12015

10318:                                            ; preds = %10263
  %10319 = landingpad { ptr, i32 }
          cleanup
  %10320 = extractvalue { ptr, i32 } %10319, 0
  store ptr %10320, ptr %5, align 8
  %10321 = extractvalue { ptr, i32 } %10319, 1
  store i32 %10321, ptr %6, align 4
  br label %10326

10322:                                            ; preds = %10264
  %10323 = landingpad { ptr, i32 }
          cleanup
  %10324 = extractvalue { ptr, i32 } %10323, 0
  store ptr %10324, ptr %5, align 8
  %10325 = extractvalue { ptr, i32 } %10323, 1
  store i32 %10325, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %646) #5
  br label %10326

10326:                                            ; preds = %10322, %10318
  call void @llvm.lifetime.end.p0(i64 24, ptr %646) #5
  br label %12015

10327:                                            ; preds = %10267
  %10328 = landingpad { ptr, i32 }
          cleanup
  %10329 = extractvalue { ptr, i32 } %10328, 0
  store ptr %10329, ptr %5, align 8
  %10330 = extractvalue { ptr, i32 } %10328, 1
  store i32 %10330, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %647) #5
  br label %12015

10331:                                            ; preds = %10275
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10332 unwind label %1026

10332:                                            ; preds = %10331
  call void @llvm.lifetime.start.p0(i64 1, ptr %648) #5
  store i8 0, ptr %648, align 1, !tbaa !9
  %10333 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %10334 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10333, ptr noundef nonnull align 1 dereferenceable(1) %648)
          to label %10335 unwind label %10371

10335:                                            ; preds = %10332
  call void @llvm.lifetime.end.p0(i64 1, ptr %648) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10336 unwind label %1026

10336:                                            ; preds = %10335
  call void @llvm.lifetime.start.p0(i64 24, ptr %649) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %650) #5
  invoke void @_ZN5sc_dt6sc_intILi6EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %650, i32 noundef 1)
          to label %10337 unwind label %10375

10337:                                            ; preds = %10336
  %10338 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %24, ptr noundef nonnull align 8 dereferenceable(8) %650)
          to label %10339 unwind label %10379

10339:                                            ; preds = %10337
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %649, ptr noundef nonnull align 1 dereferenceable(1) %10338)
          to label %10340 unwind label %10379

10340:                                            ; preds = %10339
  %10341 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %10342 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10341, ptr noundef nonnull align 8 dereferenceable(24) %649)
          to label %10343 unwind label %10383

10343:                                            ; preds = %10340
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %649) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %650) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %650) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %649) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %651) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %652) #5
  invoke void @_ZN5sc_dt6sc_intILi2EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %652, i32 noundef 0)
          to label %10344 unwind label %10389

10344:                                            ; preds = %10343
  %10345 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %652, ptr noundef nonnull align 8 dereferenceable(8) %18)
          to label %10346 unwind label %10393

10346:                                            ; preds = %10344
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %651, ptr noundef nonnull align 1 dereferenceable(1) %10345)
          to label %10347 unwind label %10393

10347:                                            ; preds = %10346
  %10348 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %10349 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10348, ptr noundef nonnull align 8 dereferenceable(24) %651)
          to label %10350 unwind label %10397

10350:                                            ; preds = %10347
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %651) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %652) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %652) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %651) #5
  %10351 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %10352 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10351, ptr noundef nonnull align 8 dereferenceable(24) %27)
          to label %10353 unwind label %1026

10353:                                            ; preds = %10350
  call void @llvm.lifetime.start.p0(i64 24, ptr %653) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %653, i32 noundef -2)
          to label %10354 unwind label %10403

10354:                                            ; preds = %10353
  %10355 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %10356 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10355, ptr noundef nonnull align 8 dereferenceable(24) %653)
          to label %10357 unwind label %10407

10357:                                            ; preds = %10354
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %653) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %653) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %654) #5
  store i8 1, ptr %654, align 1, !tbaa !9
  %10358 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %10359 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10358, ptr noundef nonnull align 1 dereferenceable(1) %654)
          to label %10360 unwind label %10412

10360:                                            ; preds = %10357
  call void @llvm.lifetime.end.p0(i64 1, ptr %654) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10361 unwind label %1026

10361:                                            ; preds = %10360
  br label %10362

10362:                                            ; preds = %10370, %10361
  %10363 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %10364 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %10363)
          to label %10365 unwind label %1026

10365:                                            ; preds = %10362
  %10366 = load i8, ptr %10364, align 1, !tbaa !9, !range !11, !noundef !12
  %10367 = trunc i8 %10366 to i1
  %10368 = xor i1 %10367, true
  br i1 %10368, label %10369, label %10416

10369:                                            ; preds = %10365
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10370 unwind label %1026

10370:                                            ; preds = %10369
  br label %10362, !llvm.loop !137

10371:                                            ; preds = %10332
  %10372 = landingpad { ptr, i32 }
          cleanup
  %10373 = extractvalue { ptr, i32 } %10372, 0
  store ptr %10373, ptr %5, align 8
  %10374 = extractvalue { ptr, i32 } %10372, 1
  store i32 %10374, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %648) #5
  br label %12015

10375:                                            ; preds = %10336
  %10376 = landingpad { ptr, i32 }
          cleanup
  %10377 = extractvalue { ptr, i32 } %10376, 0
  store ptr %10377, ptr %5, align 8
  %10378 = extractvalue { ptr, i32 } %10376, 1
  store i32 %10378, ptr %6, align 4
  br label %10388

10379:                                            ; preds = %10339, %10337
  %10380 = landingpad { ptr, i32 }
          cleanup
  %10381 = extractvalue { ptr, i32 } %10380, 0
  store ptr %10381, ptr %5, align 8
  %10382 = extractvalue { ptr, i32 } %10380, 1
  store i32 %10382, ptr %6, align 4
  br label %10387

10383:                                            ; preds = %10340
  %10384 = landingpad { ptr, i32 }
          cleanup
  %10385 = extractvalue { ptr, i32 } %10384, 0
  store ptr %10385, ptr %5, align 8
  %10386 = extractvalue { ptr, i32 } %10384, 1
  store i32 %10386, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %649) #5
  br label %10387

10387:                                            ; preds = %10383, %10379
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %650) #5
  br label %10388

10388:                                            ; preds = %10387, %10375
  call void @llvm.lifetime.end.p0(i64 24, ptr %650) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %649) #5
  br label %12015

10389:                                            ; preds = %10343
  %10390 = landingpad { ptr, i32 }
          cleanup
  %10391 = extractvalue { ptr, i32 } %10390, 0
  store ptr %10391, ptr %5, align 8
  %10392 = extractvalue { ptr, i32 } %10390, 1
  store i32 %10392, ptr %6, align 4
  br label %10402

10393:                                            ; preds = %10346, %10344
  %10394 = landingpad { ptr, i32 }
          cleanup
  %10395 = extractvalue { ptr, i32 } %10394, 0
  store ptr %10395, ptr %5, align 8
  %10396 = extractvalue { ptr, i32 } %10394, 1
  store i32 %10396, ptr %6, align 4
  br label %10401

10397:                                            ; preds = %10347
  %10398 = landingpad { ptr, i32 }
          cleanup
  %10399 = extractvalue { ptr, i32 } %10398, 0
  store ptr %10399, ptr %5, align 8
  %10400 = extractvalue { ptr, i32 } %10398, 1
  store i32 %10400, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %651) #5
  br label %10401

10401:                                            ; preds = %10397, %10393
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %652) #5
  br label %10402

10402:                                            ; preds = %10401, %10389
  call void @llvm.lifetime.end.p0(i64 24, ptr %652) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %651) #5
  br label %12015

10403:                                            ; preds = %10353
  %10404 = landingpad { ptr, i32 }
          cleanup
  %10405 = extractvalue { ptr, i32 } %10404, 0
  store ptr %10405, ptr %5, align 8
  %10406 = extractvalue { ptr, i32 } %10404, 1
  store i32 %10406, ptr %6, align 4
  br label %10411

10407:                                            ; preds = %10354
  %10408 = landingpad { ptr, i32 }
          cleanup
  %10409 = extractvalue { ptr, i32 } %10408, 0
  store ptr %10409, ptr %5, align 8
  %10410 = extractvalue { ptr, i32 } %10408, 1
  store i32 %10410, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %653) #5
  br label %10411

10411:                                            ; preds = %10407, %10403
  call void @llvm.lifetime.end.p0(i64 24, ptr %653) #5
  br label %12015

10412:                                            ; preds = %10357
  %10413 = landingpad { ptr, i32 }
          cleanup
  %10414 = extractvalue { ptr, i32 } %10413, 0
  store ptr %10414, ptr %5, align 8
  %10415 = extractvalue { ptr, i32 } %10413, 1
  store i32 %10415, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %654) #5
  br label %12015

10416:                                            ; preds = %10365
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10417 unwind label %1026

10417:                                            ; preds = %10416
  call void @llvm.lifetime.start.p0(i64 1, ptr %655) #5
  store i8 0, ptr %655, align 1, !tbaa !9
  %10418 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %10419 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10418, ptr noundef nonnull align 1 dereferenceable(1) %655)
          to label %10420 unwind label %10454

10420:                                            ; preds = %10417
  call void @llvm.lifetime.end.p0(i64 1, ptr %655) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10421 unwind label %1026

10421:                                            ; preds = %10420
  call void @llvm.lifetime.start.p0(i64 24, ptr %656) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %656, i32 noundef 10)
          to label %10422 unwind label %10458

10422:                                            ; preds = %10421
  %10423 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %656)
          to label %10424 unwind label %10462

10424:                                            ; preds = %10422
  %10425 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %10423)
          to label %10426 unwind label %10462

10426:                                            ; preds = %10424
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %656) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %656) #5
  %10427 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 0)
          to label %10428 unwind label %1026

10428:                                            ; preds = %10426
  %10429 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %10430 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10429, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %10431 unwind label %1026

10431:                                            ; preds = %10428
  %10432 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %10433 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10432, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %10434 unwind label %1026

10434:                                            ; preds = %10431
  call void @llvm.lifetime.start.p0(i64 1, ptr %657) #5
  store i8 0, ptr %657, align 1, !tbaa !9
  %10435 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %10436 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10435, ptr noundef nonnull align 1 dereferenceable(1) %657)
          to label %10437 unwind label %10467

10437:                                            ; preds = %10434
  call void @llvm.lifetime.end.p0(i64 1, ptr %657) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %658) #5
  store i8 1, ptr %658, align 1, !tbaa !9
  %10438 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %10439 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10438, ptr noundef nonnull align 1 dereferenceable(1) %658)
          to label %10440 unwind label %10471

10440:                                            ; preds = %10437
  call void @llvm.lifetime.end.p0(i64 1, ptr %658) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10441 unwind label %1026

10441:                                            ; preds = %10440
  br label %10442

10442:                                            ; preds = %10480, %10441
  br label %10443

10443:                                            ; preds = %10442
  call void @llvm.lifetime.start.p0(i64 1, ptr %659) #5
  store i8 0, ptr %659, align 1, !tbaa !9
  %10444 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %10445 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10444, ptr noundef nonnull align 1 dereferenceable(1) %659)
          to label %10446 unwind label %10475

10446:                                            ; preds = %10443
  call void @llvm.lifetime.end.p0(i64 1, ptr %659) #5
  %10447 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %10448 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %10447)
          to label %10449 unwind label %1026

10449:                                            ; preds = %10446
  %10450 = load i8, ptr %10448, align 1, !tbaa !9, !range !11, !noundef !12
  %10451 = trunc i8 %10450 to i1
  br i1 %10451, label %10452, label %10479

10452:                                            ; preds = %10449
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10453 unwind label %1026

10453:                                            ; preds = %10452
  br label %10481

10454:                                            ; preds = %10417
  %10455 = landingpad { ptr, i32 }
          cleanup
  %10456 = extractvalue { ptr, i32 } %10455, 0
  store ptr %10456, ptr %5, align 8
  %10457 = extractvalue { ptr, i32 } %10455, 1
  store i32 %10457, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %655) #5
  br label %12015

10458:                                            ; preds = %10421
  %10459 = landingpad { ptr, i32 }
          cleanup
  %10460 = extractvalue { ptr, i32 } %10459, 0
  store ptr %10460, ptr %5, align 8
  %10461 = extractvalue { ptr, i32 } %10459, 1
  store i32 %10461, ptr %6, align 4
  br label %10466

10462:                                            ; preds = %10424, %10422
  %10463 = landingpad { ptr, i32 }
          cleanup
  %10464 = extractvalue { ptr, i32 } %10463, 0
  store ptr %10464, ptr %5, align 8
  %10465 = extractvalue { ptr, i32 } %10463, 1
  store i32 %10465, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %656) #5
  br label %10466

10466:                                            ; preds = %10462, %10458
  call void @llvm.lifetime.end.p0(i64 24, ptr %656) #5
  br label %12015

10467:                                            ; preds = %10434
  %10468 = landingpad { ptr, i32 }
          cleanup
  %10469 = extractvalue { ptr, i32 } %10468, 0
  store ptr %10469, ptr %5, align 8
  %10470 = extractvalue { ptr, i32 } %10468, 1
  store i32 %10470, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %657) #5
  br label %12015

10471:                                            ; preds = %10437
  %10472 = landingpad { ptr, i32 }
          cleanup
  %10473 = extractvalue { ptr, i32 } %10472, 0
  store ptr %10473, ptr %5, align 8
  %10474 = extractvalue { ptr, i32 } %10472, 1
  store i32 %10474, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %658) #5
  br label %12015

10475:                                            ; preds = %10443
  %10476 = landingpad { ptr, i32 }
          cleanup
  %10477 = extractvalue { ptr, i32 } %10476, 0
  store ptr %10477, ptr %5, align 8
  %10478 = extractvalue { ptr, i32 } %10476, 1
  store i32 %10478, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %659) #5
  br label %12015

10479:                                            ; preds = %10449
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10480 unwind label %1026

10480:                                            ; preds = %10479
  br label %10442, !llvm.loop !138

10481:                                            ; preds = %10453
  call void @llvm.lifetime.start.p0(i64 24, ptr %660) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %660, i32 noundef 16)
          to label %10482 unwind label %10517

10482:                                            ; preds = %10481
  %10483 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %10484 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10483, ptr noundef nonnull align 8 dereferenceable(24) %660)
          to label %10485 unwind label %10521

10485:                                            ; preds = %10482
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %660) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %660) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %661) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %662) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %662, i32 noundef 24)
          to label %10486 unwind label %10526

10486:                                            ; preds = %10485
  %10487 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %662)
          to label %10488 unwind label %10530

10488:                                            ; preds = %10486
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %661, ptr noundef nonnull align 1 dereferenceable(1) %10487)
          to label %10489 unwind label %10530

10489:                                            ; preds = %10488
  %10490 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %10491 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10490, ptr noundef nonnull align 8 dereferenceable(24) %661)
          to label %10492 unwind label %10534

10492:                                            ; preds = %10489
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %661) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %662) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %662) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %661) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %663) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %663, i32 noundef 3)
          to label %10493 unwind label %10540

10493:                                            ; preds = %10492
  %10494 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %10495 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10494, ptr noundef nonnull align 8 dereferenceable(24) %663)
          to label %10496 unwind label %10544

10496:                                            ; preds = %10493
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %663) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %663) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %664) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %664, i32 noundef 3)
          to label %10497 unwind label %10549

10497:                                            ; preds = %10496
  %10498 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %10499 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10498, ptr noundef nonnull align 8 dereferenceable(24) %664)
          to label %10500 unwind label %10553

10500:                                            ; preds = %10497
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %664) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %664) #5
  %10501 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %10502 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10501, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %10503 unwind label %1026

10503:                                            ; preds = %10500
  call void @llvm.lifetime.start.p0(i64 1, ptr %665) #5
  store i8 1, ptr %665, align 1, !tbaa !9
  %10504 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %10505 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10504, ptr noundef nonnull align 1 dereferenceable(1) %665)
          to label %10506 unwind label %10558

10506:                                            ; preds = %10503
  call void @llvm.lifetime.end.p0(i64 1, ptr %665) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10507 unwind label %1026

10507:                                            ; preds = %10506
  br label %10508

10508:                                            ; preds = %10516, %10507
  %10509 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %10510 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %10509)
          to label %10511 unwind label %1026

10511:                                            ; preds = %10508
  %10512 = load i8, ptr %10510, align 1, !tbaa !9, !range !11, !noundef !12
  %10513 = trunc i8 %10512 to i1
  %10514 = xor i1 %10513, true
  br i1 %10514, label %10515, label %10562

10515:                                            ; preds = %10511
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10516 unwind label %1026

10516:                                            ; preds = %10515
  br label %10508, !llvm.loop !139

10517:                                            ; preds = %10481
  %10518 = landingpad { ptr, i32 }
          cleanup
  %10519 = extractvalue { ptr, i32 } %10518, 0
  store ptr %10519, ptr %5, align 8
  %10520 = extractvalue { ptr, i32 } %10518, 1
  store i32 %10520, ptr %6, align 4
  br label %10525

10521:                                            ; preds = %10482
  %10522 = landingpad { ptr, i32 }
          cleanup
  %10523 = extractvalue { ptr, i32 } %10522, 0
  store ptr %10523, ptr %5, align 8
  %10524 = extractvalue { ptr, i32 } %10522, 1
  store i32 %10524, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %660) #5
  br label %10525

10525:                                            ; preds = %10521, %10517
  call void @llvm.lifetime.end.p0(i64 24, ptr %660) #5
  br label %12015

10526:                                            ; preds = %10485
  %10527 = landingpad { ptr, i32 }
          cleanup
  %10528 = extractvalue { ptr, i32 } %10527, 0
  store ptr %10528, ptr %5, align 8
  %10529 = extractvalue { ptr, i32 } %10527, 1
  store i32 %10529, ptr %6, align 4
  br label %10539

10530:                                            ; preds = %10488, %10486
  %10531 = landingpad { ptr, i32 }
          cleanup
  %10532 = extractvalue { ptr, i32 } %10531, 0
  store ptr %10532, ptr %5, align 8
  %10533 = extractvalue { ptr, i32 } %10531, 1
  store i32 %10533, ptr %6, align 4
  br label %10538

10534:                                            ; preds = %10489
  %10535 = landingpad { ptr, i32 }
          cleanup
  %10536 = extractvalue { ptr, i32 } %10535, 0
  store ptr %10536, ptr %5, align 8
  %10537 = extractvalue { ptr, i32 } %10535, 1
  store i32 %10537, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %661) #5
  br label %10538

10538:                                            ; preds = %10534, %10530
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %662) #5
  br label %10539

10539:                                            ; preds = %10538, %10526
  call void @llvm.lifetime.end.p0(i64 24, ptr %662) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %661) #5
  br label %12015

10540:                                            ; preds = %10492
  %10541 = landingpad { ptr, i32 }
          cleanup
  %10542 = extractvalue { ptr, i32 } %10541, 0
  store ptr %10542, ptr %5, align 8
  %10543 = extractvalue { ptr, i32 } %10541, 1
  store i32 %10543, ptr %6, align 4
  br label %10548

10544:                                            ; preds = %10493
  %10545 = landingpad { ptr, i32 }
          cleanup
  %10546 = extractvalue { ptr, i32 } %10545, 0
  store ptr %10546, ptr %5, align 8
  %10547 = extractvalue { ptr, i32 } %10545, 1
  store i32 %10547, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %663) #5
  br label %10548

10548:                                            ; preds = %10544, %10540
  call void @llvm.lifetime.end.p0(i64 24, ptr %663) #5
  br label %12015

10549:                                            ; preds = %10496
  %10550 = landingpad { ptr, i32 }
          cleanup
  %10551 = extractvalue { ptr, i32 } %10550, 0
  store ptr %10551, ptr %5, align 8
  %10552 = extractvalue { ptr, i32 } %10550, 1
  store i32 %10552, ptr %6, align 4
  br label %10557

10553:                                            ; preds = %10497
  %10554 = landingpad { ptr, i32 }
          cleanup
  %10555 = extractvalue { ptr, i32 } %10554, 0
  store ptr %10555, ptr %5, align 8
  %10556 = extractvalue { ptr, i32 } %10554, 1
  store i32 %10556, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %664) #5
  br label %10557

10557:                                            ; preds = %10553, %10549
  call void @llvm.lifetime.end.p0(i64 24, ptr %664) #5
  br label %12015

10558:                                            ; preds = %10503
  %10559 = landingpad { ptr, i32 }
          cleanup
  %10560 = extractvalue { ptr, i32 } %10559, 0
  store ptr %10560, ptr %5, align 8
  %10561 = extractvalue { ptr, i32 } %10559, 1
  store i32 %10561, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %665) #5
  br label %12015

10562:                                            ; preds = %10511
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10563 unwind label %1026

10563:                                            ; preds = %10562
  call void @llvm.lifetime.start.p0(i64 1, ptr %666) #5
  store i8 0, ptr %666, align 1, !tbaa !9
  %10564 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %10565 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10564, ptr noundef nonnull align 1 dereferenceable(1) %666)
          to label %10566 unwind label %10603

10566:                                            ; preds = %10563
  call void @llvm.lifetime.end.p0(i64 1, ptr %666) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10567 unwind label %1026

10567:                                            ; preds = %10566
  call void @llvm.lifetime.start.p0(i64 24, ptr %667) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %667, i32 noundef 96)
          to label %10568 unwind label %10607

10568:                                            ; preds = %10567
  %10569 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %10570 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10569, ptr noundef nonnull align 8 dereferenceable(24) %667)
          to label %10571 unwind label %10611

10571:                                            ; preds = %10568
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %667) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %667) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %668) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %669) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %669, i32 noundef 27)
          to label %10572 unwind label %10616

10572:                                            ; preds = %10571
  %10573 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %669)
          to label %10574 unwind label %10620

10574:                                            ; preds = %10572
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %668, ptr noundef nonnull align 1 dereferenceable(1) %10573)
          to label %10575 unwind label %10620

10575:                                            ; preds = %10574
  %10576 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %10577 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10576, ptr noundef nonnull align 8 dereferenceable(24) %668)
          to label %10578 unwind label %10624

10578:                                            ; preds = %10575
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %668) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %669) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %669) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %668) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %670) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %670, i32 noundef 32)
          to label %10579 unwind label %10630

10579:                                            ; preds = %10578
  %10580 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %10581 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10580, ptr noundef nonnull align 8 dereferenceable(24) %670)
          to label %10582 unwind label %10634

10582:                                            ; preds = %10579
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %670) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %670) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %671) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %671, i32 noundef 3)
          to label %10583 unwind label %10639

10583:                                            ; preds = %10582
  %10584 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %10585 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10584, ptr noundef nonnull align 8 dereferenceable(24) %671)
          to label %10586 unwind label %10643

10586:                                            ; preds = %10583
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %671) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %671) #5
  %10587 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %10588 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10587, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %10589 unwind label %1026

10589:                                            ; preds = %10586
  call void @llvm.lifetime.start.p0(i64 1, ptr %672) #5
  store i8 1, ptr %672, align 1, !tbaa !9
  %10590 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %10591 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10590, ptr noundef nonnull align 1 dereferenceable(1) %672)
          to label %10592 unwind label %10648

10592:                                            ; preds = %10589
  call void @llvm.lifetime.end.p0(i64 1, ptr %672) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10593 unwind label %1026

10593:                                            ; preds = %10592
  br label %10594

10594:                                            ; preds = %10602, %10593
  %10595 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %10596 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %10595)
          to label %10597 unwind label %1026

10597:                                            ; preds = %10594
  %10598 = load i8, ptr %10596, align 1, !tbaa !9, !range !11, !noundef !12
  %10599 = trunc i8 %10598 to i1
  %10600 = xor i1 %10599, true
  br i1 %10600, label %10601, label %10652

10601:                                            ; preds = %10597
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10602 unwind label %1026

10602:                                            ; preds = %10601
  br label %10594, !llvm.loop !140

10603:                                            ; preds = %10563
  %10604 = landingpad { ptr, i32 }
          cleanup
  %10605 = extractvalue { ptr, i32 } %10604, 0
  store ptr %10605, ptr %5, align 8
  %10606 = extractvalue { ptr, i32 } %10604, 1
  store i32 %10606, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %666) #5
  br label %12015

10607:                                            ; preds = %10567
  %10608 = landingpad { ptr, i32 }
          cleanup
  %10609 = extractvalue { ptr, i32 } %10608, 0
  store ptr %10609, ptr %5, align 8
  %10610 = extractvalue { ptr, i32 } %10608, 1
  store i32 %10610, ptr %6, align 4
  br label %10615

10611:                                            ; preds = %10568
  %10612 = landingpad { ptr, i32 }
          cleanup
  %10613 = extractvalue { ptr, i32 } %10612, 0
  store ptr %10613, ptr %5, align 8
  %10614 = extractvalue { ptr, i32 } %10612, 1
  store i32 %10614, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %667) #5
  br label %10615

10615:                                            ; preds = %10611, %10607
  call void @llvm.lifetime.end.p0(i64 24, ptr %667) #5
  br label %12015

10616:                                            ; preds = %10571
  %10617 = landingpad { ptr, i32 }
          cleanup
  %10618 = extractvalue { ptr, i32 } %10617, 0
  store ptr %10618, ptr %5, align 8
  %10619 = extractvalue { ptr, i32 } %10617, 1
  store i32 %10619, ptr %6, align 4
  br label %10629

10620:                                            ; preds = %10574, %10572
  %10621 = landingpad { ptr, i32 }
          cleanup
  %10622 = extractvalue { ptr, i32 } %10621, 0
  store ptr %10622, ptr %5, align 8
  %10623 = extractvalue { ptr, i32 } %10621, 1
  store i32 %10623, ptr %6, align 4
  br label %10628

10624:                                            ; preds = %10575
  %10625 = landingpad { ptr, i32 }
          cleanup
  %10626 = extractvalue { ptr, i32 } %10625, 0
  store ptr %10626, ptr %5, align 8
  %10627 = extractvalue { ptr, i32 } %10625, 1
  store i32 %10627, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %668) #5
  br label %10628

10628:                                            ; preds = %10624, %10620
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %669) #5
  br label %10629

10629:                                            ; preds = %10628, %10616
  call void @llvm.lifetime.end.p0(i64 24, ptr %669) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %668) #5
  br label %12015

10630:                                            ; preds = %10578
  %10631 = landingpad { ptr, i32 }
          cleanup
  %10632 = extractvalue { ptr, i32 } %10631, 0
  store ptr %10632, ptr %5, align 8
  %10633 = extractvalue { ptr, i32 } %10631, 1
  store i32 %10633, ptr %6, align 4
  br label %10638

10634:                                            ; preds = %10579
  %10635 = landingpad { ptr, i32 }
          cleanup
  %10636 = extractvalue { ptr, i32 } %10635, 0
  store ptr %10636, ptr %5, align 8
  %10637 = extractvalue { ptr, i32 } %10635, 1
  store i32 %10637, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %670) #5
  br label %10638

10638:                                            ; preds = %10634, %10630
  call void @llvm.lifetime.end.p0(i64 24, ptr %670) #5
  br label %12015

10639:                                            ; preds = %10582
  %10640 = landingpad { ptr, i32 }
          cleanup
  %10641 = extractvalue { ptr, i32 } %10640, 0
  store ptr %10641, ptr %5, align 8
  %10642 = extractvalue { ptr, i32 } %10640, 1
  store i32 %10642, ptr %6, align 4
  br label %10647

10643:                                            ; preds = %10583
  %10644 = landingpad { ptr, i32 }
          cleanup
  %10645 = extractvalue { ptr, i32 } %10644, 0
  store ptr %10645, ptr %5, align 8
  %10646 = extractvalue { ptr, i32 } %10644, 1
  store i32 %10646, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %671) #5
  br label %10647

10647:                                            ; preds = %10643, %10639
  call void @llvm.lifetime.end.p0(i64 24, ptr %671) #5
  br label %12015

10648:                                            ; preds = %10589
  %10649 = landingpad { ptr, i32 }
          cleanup
  %10650 = extractvalue { ptr, i32 } %10649, 0
  store ptr %10650, ptr %5, align 8
  %10651 = extractvalue { ptr, i32 } %10649, 1
  store i32 %10651, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %672) #5
  br label %12015

10652:                                            ; preds = %10597
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10653 unwind label %1026

10653:                                            ; preds = %10652
  call void @llvm.lifetime.start.p0(i64 1, ptr %673) #5
  store i8 0, ptr %673, align 1, !tbaa !9
  %10654 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %10655 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10654, ptr noundef nonnull align 1 dereferenceable(1) %673)
          to label %10656 unwind label %10689

10656:                                            ; preds = %10653
  call void @llvm.lifetime.end.p0(i64 1, ptr %673) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10657 unwind label %1026

10657:                                            ; preds = %10656
  call void @llvm.lifetime.start.p0(i64 24, ptr %674) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %674, i32 noundef 160)
          to label %10658 unwind label %10693

10658:                                            ; preds = %10657
  %10659 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %10660 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10659, ptr noundef nonnull align 8 dereferenceable(24) %674)
          to label %10661 unwind label %10697

10661:                                            ; preds = %10658
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %674) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %674) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %675) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %676) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %676, i32 noundef 59)
          to label %10662 unwind label %10702

10662:                                            ; preds = %10661
  %10663 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %676)
          to label %10664 unwind label %10706

10664:                                            ; preds = %10662
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %675, ptr noundef nonnull align 1 dereferenceable(1) %10663)
          to label %10665 unwind label %10706

10665:                                            ; preds = %10664
  %10666 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %10667 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10666, ptr noundef nonnull align 8 dereferenceable(24) %675)
          to label %10668 unwind label %10710

10668:                                            ; preds = %10665
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %675) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %676) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %676) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %675) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %677) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %677, i32 noundef 3)
          to label %10669 unwind label %10716

10669:                                            ; preds = %10668
  %10670 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %10671 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10670, ptr noundef nonnull align 8 dereferenceable(24) %677)
          to label %10672 unwind label %10720

10672:                                            ; preds = %10669
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %677) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %677) #5
  %10673 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %10674 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10673, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %10675 unwind label %1026

10675:                                            ; preds = %10672
  call void @llvm.lifetime.start.p0(i64 1, ptr %678) #5
  store i8 1, ptr %678, align 1, !tbaa !9
  %10676 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %10677 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10676, ptr noundef nonnull align 1 dereferenceable(1) %678)
          to label %10678 unwind label %10725

10678:                                            ; preds = %10675
  call void @llvm.lifetime.end.p0(i64 1, ptr %678) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10679 unwind label %1026

10679:                                            ; preds = %10678
  br label %10680

10680:                                            ; preds = %10688, %10679
  %10681 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %10682 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %10681)
          to label %10683 unwind label %1026

10683:                                            ; preds = %10680
  %10684 = load i8, ptr %10682, align 1, !tbaa !9, !range !11, !noundef !12
  %10685 = trunc i8 %10684 to i1
  %10686 = xor i1 %10685, true
  br i1 %10686, label %10687, label %10729

10687:                                            ; preds = %10683
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10688 unwind label %1026

10688:                                            ; preds = %10687
  br label %10680, !llvm.loop !141

10689:                                            ; preds = %10653
  %10690 = landingpad { ptr, i32 }
          cleanup
  %10691 = extractvalue { ptr, i32 } %10690, 0
  store ptr %10691, ptr %5, align 8
  %10692 = extractvalue { ptr, i32 } %10690, 1
  store i32 %10692, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %673) #5
  br label %12015

10693:                                            ; preds = %10657
  %10694 = landingpad { ptr, i32 }
          cleanup
  %10695 = extractvalue { ptr, i32 } %10694, 0
  store ptr %10695, ptr %5, align 8
  %10696 = extractvalue { ptr, i32 } %10694, 1
  store i32 %10696, ptr %6, align 4
  br label %10701

10697:                                            ; preds = %10658
  %10698 = landingpad { ptr, i32 }
          cleanup
  %10699 = extractvalue { ptr, i32 } %10698, 0
  store ptr %10699, ptr %5, align 8
  %10700 = extractvalue { ptr, i32 } %10698, 1
  store i32 %10700, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %674) #5
  br label %10701

10701:                                            ; preds = %10697, %10693
  call void @llvm.lifetime.end.p0(i64 24, ptr %674) #5
  br label %12015

10702:                                            ; preds = %10661
  %10703 = landingpad { ptr, i32 }
          cleanup
  %10704 = extractvalue { ptr, i32 } %10703, 0
  store ptr %10704, ptr %5, align 8
  %10705 = extractvalue { ptr, i32 } %10703, 1
  store i32 %10705, ptr %6, align 4
  br label %10715

10706:                                            ; preds = %10664, %10662
  %10707 = landingpad { ptr, i32 }
          cleanup
  %10708 = extractvalue { ptr, i32 } %10707, 0
  store ptr %10708, ptr %5, align 8
  %10709 = extractvalue { ptr, i32 } %10707, 1
  store i32 %10709, ptr %6, align 4
  br label %10714

10710:                                            ; preds = %10665
  %10711 = landingpad { ptr, i32 }
          cleanup
  %10712 = extractvalue { ptr, i32 } %10711, 0
  store ptr %10712, ptr %5, align 8
  %10713 = extractvalue { ptr, i32 } %10711, 1
  store i32 %10713, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %675) #5
  br label %10714

10714:                                            ; preds = %10710, %10706
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %676) #5
  br label %10715

10715:                                            ; preds = %10714, %10702
  call void @llvm.lifetime.end.p0(i64 24, ptr %676) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %675) #5
  br label %12015

10716:                                            ; preds = %10668
  %10717 = landingpad { ptr, i32 }
          cleanup
  %10718 = extractvalue { ptr, i32 } %10717, 0
  store ptr %10718, ptr %5, align 8
  %10719 = extractvalue { ptr, i32 } %10717, 1
  store i32 %10719, ptr %6, align 4
  br label %10724

10720:                                            ; preds = %10669
  %10721 = landingpad { ptr, i32 }
          cleanup
  %10722 = extractvalue { ptr, i32 } %10721, 0
  store ptr %10722, ptr %5, align 8
  %10723 = extractvalue { ptr, i32 } %10721, 1
  store i32 %10723, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %677) #5
  br label %10724

10724:                                            ; preds = %10720, %10716
  call void @llvm.lifetime.end.p0(i64 24, ptr %677) #5
  br label %12015

10725:                                            ; preds = %10675
  %10726 = landingpad { ptr, i32 }
          cleanup
  %10727 = extractvalue { ptr, i32 } %10726, 0
  store ptr %10727, ptr %5, align 8
  %10728 = extractvalue { ptr, i32 } %10726, 1
  store i32 %10728, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %678) #5
  br label %12015

10729:                                            ; preds = %10683
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10730 unwind label %1026

10730:                                            ; preds = %10729
  call void @llvm.lifetime.start.p0(i64 1, ptr %679) #5
  store i8 0, ptr %679, align 1, !tbaa !9
  %10731 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %10732 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10731, ptr noundef nonnull align 1 dereferenceable(1) %679)
          to label %10733 unwind label %10772

10733:                                            ; preds = %10730
  call void @llvm.lifetime.end.p0(i64 1, ptr %679) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10734 unwind label %1026

10734:                                            ; preds = %10733
  call void @llvm.lifetime.start.p0(i64 24, ptr %680) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %680, i32 noundef 48)
          to label %10735 unwind label %10776

10735:                                            ; preds = %10734
  %10736 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %10737 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10736, ptr noundef nonnull align 8 dereferenceable(24) %680)
          to label %10738 unwind label %10780

10738:                                            ; preds = %10735
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %680) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %680) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %681) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %682) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %682, i32 noundef -37)
          to label %10739 unwind label %10785

10739:                                            ; preds = %10738
  %10740 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %682)
          to label %10741 unwind label %10789

10741:                                            ; preds = %10739
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %681, ptr noundef nonnull align 1 dereferenceable(1) %10740)
          to label %10742 unwind label %10789

10742:                                            ; preds = %10741
  %10743 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %10744 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10743, ptr noundef nonnull align 8 dereferenceable(24) %681)
          to label %10745 unwind label %10793

10745:                                            ; preds = %10742
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %681) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %682) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %682) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %681) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %683) #5
  %10746 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 6, i32 noundef 0)
          to label %10747 unwind label %10799

10747:                                            ; preds = %10745
  invoke void @_ZN5sc_dt6sc_intILi7EEC2ERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %683, ptr noundef nonnull align 8 dereferenceable(28) %10746)
          to label %10748 unwind label %10799

10748:                                            ; preds = %10747
  %10749 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %10750 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10749, ptr noundef nonnull align 8 dereferenceable(24) %683)
          to label %10751 unwind label %10803

10751:                                            ; preds = %10748
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %683) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %683) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %684) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %684, i32 noundef 3)
          to label %10752 unwind label %10808

10752:                                            ; preds = %10751
  %10753 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %10754 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10753, ptr noundef nonnull align 8 dereferenceable(24) %684)
          to label %10755 unwind label %10812

10755:                                            ; preds = %10752
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %684) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %684) #5
  %10756 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %10757 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10756, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %10758 unwind label %1026

10758:                                            ; preds = %10755
  call void @llvm.lifetime.start.p0(i64 1, ptr %685) #5
  store i8 1, ptr %685, align 1, !tbaa !9
  %10759 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %10760 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10759, ptr noundef nonnull align 1 dereferenceable(1) %685)
          to label %10761 unwind label %10817

10761:                                            ; preds = %10758
  call void @llvm.lifetime.end.p0(i64 1, ptr %685) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10762 unwind label %1026

10762:                                            ; preds = %10761
  br label %10763

10763:                                            ; preds = %10771, %10762
  %10764 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %10765 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %10764)
          to label %10766 unwind label %1026

10766:                                            ; preds = %10763
  %10767 = load i8, ptr %10765, align 1, !tbaa !9, !range !11, !noundef !12
  %10768 = trunc i8 %10767 to i1
  %10769 = xor i1 %10768, true
  br i1 %10769, label %10770, label %10821

10770:                                            ; preds = %10766
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10771 unwind label %1026

10771:                                            ; preds = %10770
  br label %10763, !llvm.loop !142

10772:                                            ; preds = %10730
  %10773 = landingpad { ptr, i32 }
          cleanup
  %10774 = extractvalue { ptr, i32 } %10773, 0
  store ptr %10774, ptr %5, align 8
  %10775 = extractvalue { ptr, i32 } %10773, 1
  store i32 %10775, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %679) #5
  br label %12015

10776:                                            ; preds = %10734
  %10777 = landingpad { ptr, i32 }
          cleanup
  %10778 = extractvalue { ptr, i32 } %10777, 0
  store ptr %10778, ptr %5, align 8
  %10779 = extractvalue { ptr, i32 } %10777, 1
  store i32 %10779, ptr %6, align 4
  br label %10784

10780:                                            ; preds = %10735
  %10781 = landingpad { ptr, i32 }
          cleanup
  %10782 = extractvalue { ptr, i32 } %10781, 0
  store ptr %10782, ptr %5, align 8
  %10783 = extractvalue { ptr, i32 } %10781, 1
  store i32 %10783, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %680) #5
  br label %10784

10784:                                            ; preds = %10780, %10776
  call void @llvm.lifetime.end.p0(i64 24, ptr %680) #5
  br label %12015

10785:                                            ; preds = %10738
  %10786 = landingpad { ptr, i32 }
          cleanup
  %10787 = extractvalue { ptr, i32 } %10786, 0
  store ptr %10787, ptr %5, align 8
  %10788 = extractvalue { ptr, i32 } %10786, 1
  store i32 %10788, ptr %6, align 4
  br label %10798

10789:                                            ; preds = %10741, %10739
  %10790 = landingpad { ptr, i32 }
          cleanup
  %10791 = extractvalue { ptr, i32 } %10790, 0
  store ptr %10791, ptr %5, align 8
  %10792 = extractvalue { ptr, i32 } %10790, 1
  store i32 %10792, ptr %6, align 4
  br label %10797

10793:                                            ; preds = %10742
  %10794 = landingpad { ptr, i32 }
          cleanup
  %10795 = extractvalue { ptr, i32 } %10794, 0
  store ptr %10795, ptr %5, align 8
  %10796 = extractvalue { ptr, i32 } %10794, 1
  store i32 %10796, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %681) #5
  br label %10797

10797:                                            ; preds = %10793, %10789
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %682) #5
  br label %10798

10798:                                            ; preds = %10797, %10785
  call void @llvm.lifetime.end.p0(i64 24, ptr %682) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %681) #5
  br label %12015

10799:                                            ; preds = %10747, %10745
  %10800 = landingpad { ptr, i32 }
          cleanup
  %10801 = extractvalue { ptr, i32 } %10800, 0
  store ptr %10801, ptr %5, align 8
  %10802 = extractvalue { ptr, i32 } %10800, 1
  store i32 %10802, ptr %6, align 4
  br label %10807

10803:                                            ; preds = %10748
  %10804 = landingpad { ptr, i32 }
          cleanup
  %10805 = extractvalue { ptr, i32 } %10804, 0
  store ptr %10805, ptr %5, align 8
  %10806 = extractvalue { ptr, i32 } %10804, 1
  store i32 %10806, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %683) #5
  br label %10807

10807:                                            ; preds = %10803, %10799
  call void @llvm.lifetime.end.p0(i64 24, ptr %683) #5
  br label %12015

10808:                                            ; preds = %10751
  %10809 = landingpad { ptr, i32 }
          cleanup
  %10810 = extractvalue { ptr, i32 } %10809, 0
  store ptr %10810, ptr %5, align 8
  %10811 = extractvalue { ptr, i32 } %10809, 1
  store i32 %10811, ptr %6, align 4
  br label %10816

10812:                                            ; preds = %10752
  %10813 = landingpad { ptr, i32 }
          cleanup
  %10814 = extractvalue { ptr, i32 } %10813, 0
  store ptr %10814, ptr %5, align 8
  %10815 = extractvalue { ptr, i32 } %10813, 1
  store i32 %10815, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %684) #5
  br label %10816

10816:                                            ; preds = %10812, %10808
  call void @llvm.lifetime.end.p0(i64 24, ptr %684) #5
  br label %12015

10817:                                            ; preds = %10758
  %10818 = landingpad { ptr, i32 }
          cleanup
  %10819 = extractvalue { ptr, i32 } %10818, 0
  store ptr %10819, ptr %5, align 8
  %10820 = extractvalue { ptr, i32 } %10818, 1
  store i32 %10820, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %685) #5
  br label %12015

10821:                                            ; preds = %10766
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10822 unwind label %1026

10822:                                            ; preds = %10821
  call void @llvm.lifetime.start.p0(i64 1, ptr %686) #5
  store i8 0, ptr %686, align 1, !tbaa !9
  %10823 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %10824 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10823, ptr noundef nonnull align 1 dereferenceable(1) %686)
          to label %10825 unwind label %10865

10825:                                            ; preds = %10822
  call void @llvm.lifetime.end.p0(i64 1, ptr %686) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10826 unwind label %1026

10826:                                            ; preds = %10825
  call void @llvm.lifetime.start.p0(i64 24, ptr %687) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %687, i32 noundef 4)
          to label %10827 unwind label %10869

10827:                                            ; preds = %10826
  %10828 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %10829 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10828, ptr noundef nonnull align 8 dereferenceable(24) %687)
          to label %10830 unwind label %10873

10830:                                            ; preds = %10827
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %687) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %687) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %688) #5
  %10831 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %27, i32 noundef 6, i32 noundef 0)
          to label %10832 unwind label %10878

10832:                                            ; preds = %10830
  %10833 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 6, i32 noundef 0)
          to label %10834 unwind label %10878

10834:                                            ; preds = %10832
  %10835 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %10831, ptr noundef nonnull align 8 dereferenceable(8) %10833)
          to label %10836 unwind label %10878

10836:                                            ; preds = %10834
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %688, ptr noundef nonnull align 1 dereferenceable(1) %10835)
          to label %10837 unwind label %10878

10837:                                            ; preds = %10836
  %10838 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %10839 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10838, ptr noundef nonnull align 8 dereferenceable(24) %688)
          to label %10840 unwind label %10882

10840:                                            ; preds = %10837
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %688) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %688) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %689) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %689, i32 noundef 1)
          to label %10841 unwind label %10887

10841:                                            ; preds = %10840
  %10842 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %10843 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10842, ptr noundef nonnull align 8 dereferenceable(24) %689)
          to label %10844 unwind label %10891

10844:                                            ; preds = %10841
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %689) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %689) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %690) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %690, i32 noundef 3)
          to label %10845 unwind label %10896

10845:                                            ; preds = %10844
  %10846 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %10847 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10846, ptr noundef nonnull align 8 dereferenceable(24) %690)
          to label %10848 unwind label %10900

10848:                                            ; preds = %10845
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %690) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %690) #5
  %10849 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %10850 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10849, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %10851 unwind label %1026

10851:                                            ; preds = %10848
  call void @llvm.lifetime.start.p0(i64 1, ptr %691) #5
  store i8 1, ptr %691, align 1, !tbaa !9
  %10852 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %10853 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10852, ptr noundef nonnull align 1 dereferenceable(1) %691)
          to label %10854 unwind label %10905

10854:                                            ; preds = %10851
  call void @llvm.lifetime.end.p0(i64 1, ptr %691) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10855 unwind label %1026

10855:                                            ; preds = %10854
  br label %10856

10856:                                            ; preds = %10864, %10855
  %10857 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %10858 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %10857)
          to label %10859 unwind label %1026

10859:                                            ; preds = %10856
  %10860 = load i8, ptr %10858, align 1, !tbaa !9, !range !11, !noundef !12
  %10861 = trunc i8 %10860 to i1
  %10862 = xor i1 %10861, true
  br i1 %10862, label %10863, label %10909

10863:                                            ; preds = %10859
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10864 unwind label %1026

10864:                                            ; preds = %10863
  br label %10856, !llvm.loop !143

10865:                                            ; preds = %10822
  %10866 = landingpad { ptr, i32 }
          cleanup
  %10867 = extractvalue { ptr, i32 } %10866, 0
  store ptr %10867, ptr %5, align 8
  %10868 = extractvalue { ptr, i32 } %10866, 1
  store i32 %10868, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %686) #5
  br label %12015

10869:                                            ; preds = %10826
  %10870 = landingpad { ptr, i32 }
          cleanup
  %10871 = extractvalue { ptr, i32 } %10870, 0
  store ptr %10871, ptr %5, align 8
  %10872 = extractvalue { ptr, i32 } %10870, 1
  store i32 %10872, ptr %6, align 4
  br label %10877

10873:                                            ; preds = %10827
  %10874 = landingpad { ptr, i32 }
          cleanup
  %10875 = extractvalue { ptr, i32 } %10874, 0
  store ptr %10875, ptr %5, align 8
  %10876 = extractvalue { ptr, i32 } %10874, 1
  store i32 %10876, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %687) #5
  br label %10877

10877:                                            ; preds = %10873, %10869
  call void @llvm.lifetime.end.p0(i64 24, ptr %687) #5
  br label %12015

10878:                                            ; preds = %10836, %10834, %10832, %10830
  %10879 = landingpad { ptr, i32 }
          cleanup
  %10880 = extractvalue { ptr, i32 } %10879, 0
  store ptr %10880, ptr %5, align 8
  %10881 = extractvalue { ptr, i32 } %10879, 1
  store i32 %10881, ptr %6, align 4
  br label %10886

10882:                                            ; preds = %10837
  %10883 = landingpad { ptr, i32 }
          cleanup
  %10884 = extractvalue { ptr, i32 } %10883, 0
  store ptr %10884, ptr %5, align 8
  %10885 = extractvalue { ptr, i32 } %10883, 1
  store i32 %10885, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %688) #5
  br label %10886

10886:                                            ; preds = %10882, %10878
  call void @llvm.lifetime.end.p0(i64 24, ptr %688) #5
  br label %12015

10887:                                            ; preds = %10840
  %10888 = landingpad { ptr, i32 }
          cleanup
  %10889 = extractvalue { ptr, i32 } %10888, 0
  store ptr %10889, ptr %5, align 8
  %10890 = extractvalue { ptr, i32 } %10888, 1
  store i32 %10890, ptr %6, align 4
  br label %10895

10891:                                            ; preds = %10841
  %10892 = landingpad { ptr, i32 }
          cleanup
  %10893 = extractvalue { ptr, i32 } %10892, 0
  store ptr %10893, ptr %5, align 8
  %10894 = extractvalue { ptr, i32 } %10892, 1
  store i32 %10894, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %689) #5
  br label %10895

10895:                                            ; preds = %10891, %10887
  call void @llvm.lifetime.end.p0(i64 24, ptr %689) #5
  br label %12015

10896:                                            ; preds = %10844
  %10897 = landingpad { ptr, i32 }
          cleanup
  %10898 = extractvalue { ptr, i32 } %10897, 0
  store ptr %10898, ptr %5, align 8
  %10899 = extractvalue { ptr, i32 } %10897, 1
  store i32 %10899, ptr %6, align 4
  br label %10904

10900:                                            ; preds = %10845
  %10901 = landingpad { ptr, i32 }
          cleanup
  %10902 = extractvalue { ptr, i32 } %10901, 0
  store ptr %10902, ptr %5, align 8
  %10903 = extractvalue { ptr, i32 } %10901, 1
  store i32 %10903, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %690) #5
  br label %10904

10904:                                            ; preds = %10900, %10896
  call void @llvm.lifetime.end.p0(i64 24, ptr %690) #5
  br label %12015

10905:                                            ; preds = %10851
  %10906 = landingpad { ptr, i32 }
          cleanup
  %10907 = extractvalue { ptr, i32 } %10906, 0
  store ptr %10907, ptr %5, align 8
  %10908 = extractvalue { ptr, i32 } %10906, 1
  store i32 %10908, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %691) #5
  br label %12015

10909:                                            ; preds = %10859
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10910 unwind label %1026

10910:                                            ; preds = %10909
  call void @llvm.lifetime.start.p0(i64 1, ptr %692) #5
  store i8 0, ptr %692, align 1, !tbaa !9
  %10911 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %10912 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10911, ptr noundef nonnull align 1 dereferenceable(1) %692)
          to label %10913 unwind label %10953

10913:                                            ; preds = %10910
  call void @llvm.lifetime.end.p0(i64 1, ptr %692) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10914 unwind label %1026

10914:                                            ; preds = %10913
  call void @llvm.lifetime.start.p0(i64 24, ptr %693) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %693, i32 noundef 20)
          to label %10915 unwind label %10957

10915:                                            ; preds = %10914
  %10916 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %10917 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10916, ptr noundef nonnull align 8 dereferenceable(24) %693)
          to label %10918 unwind label %10961

10918:                                            ; preds = %10915
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %693) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %693) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %694) #5
  %10919 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %27, i32 noundef 6, i32 noundef 0)
          to label %10920 unwind label %10966

10920:                                            ; preds = %10918
  %10921 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %10, i32 noundef 6, i32 noundef 0)
          to label %10922 unwind label %10966

10922:                                            ; preds = %10920
  %10923 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %10919, ptr noundef nonnull align 8 dereferenceable(8) %10921)
          to label %10924 unwind label %10966

10924:                                            ; preds = %10922
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %694, ptr noundef nonnull align 1 dereferenceable(1) %10923)
          to label %10925 unwind label %10966

10925:                                            ; preds = %10924
  %10926 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %10927 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10926, ptr noundef nonnull align 8 dereferenceable(24) %694)
          to label %10928 unwind label %10970

10928:                                            ; preds = %10925
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %694) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %694) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %695) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %695, i32 noundef 4)
          to label %10929 unwind label %10975

10929:                                            ; preds = %10928
  %10930 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %10931 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10930, ptr noundef nonnull align 8 dereferenceable(24) %695)
          to label %10932 unwind label %10979

10932:                                            ; preds = %10929
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %695) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %695) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %696) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %696, i32 noundef 3)
          to label %10933 unwind label %10984

10933:                                            ; preds = %10932
  %10934 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %10935 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10934, ptr noundef nonnull align 8 dereferenceable(24) %696)
          to label %10936 unwind label %10988

10936:                                            ; preds = %10933
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %696) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %696) #5
  %10937 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %10938 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %10937, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %10939 unwind label %1026

10939:                                            ; preds = %10936
  call void @llvm.lifetime.start.p0(i64 1, ptr %697) #5
  store i8 1, ptr %697, align 1, !tbaa !9
  %10940 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %10941 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10940, ptr noundef nonnull align 1 dereferenceable(1) %697)
          to label %10942 unwind label %10993

10942:                                            ; preds = %10939
  call void @llvm.lifetime.end.p0(i64 1, ptr %697) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10943 unwind label %1026

10943:                                            ; preds = %10942
  br label %10944

10944:                                            ; preds = %10952, %10943
  %10945 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %10946 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %10945)
          to label %10947 unwind label %1026

10947:                                            ; preds = %10944
  %10948 = load i8, ptr %10946, align 1, !tbaa !9, !range !11, !noundef !12
  %10949 = trunc i8 %10948 to i1
  %10950 = xor i1 %10949, true
  br i1 %10950, label %10951, label %10997

10951:                                            ; preds = %10947
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10952 unwind label %1026

10952:                                            ; preds = %10951
  br label %10944, !llvm.loop !144

10953:                                            ; preds = %10910
  %10954 = landingpad { ptr, i32 }
          cleanup
  %10955 = extractvalue { ptr, i32 } %10954, 0
  store ptr %10955, ptr %5, align 8
  %10956 = extractvalue { ptr, i32 } %10954, 1
  store i32 %10956, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %692) #5
  br label %12015

10957:                                            ; preds = %10914
  %10958 = landingpad { ptr, i32 }
          cleanup
  %10959 = extractvalue { ptr, i32 } %10958, 0
  store ptr %10959, ptr %5, align 8
  %10960 = extractvalue { ptr, i32 } %10958, 1
  store i32 %10960, ptr %6, align 4
  br label %10965

10961:                                            ; preds = %10915
  %10962 = landingpad { ptr, i32 }
          cleanup
  %10963 = extractvalue { ptr, i32 } %10962, 0
  store ptr %10963, ptr %5, align 8
  %10964 = extractvalue { ptr, i32 } %10962, 1
  store i32 %10964, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %693) #5
  br label %10965

10965:                                            ; preds = %10961, %10957
  call void @llvm.lifetime.end.p0(i64 24, ptr %693) #5
  br label %12015

10966:                                            ; preds = %10924, %10922, %10920, %10918
  %10967 = landingpad { ptr, i32 }
          cleanup
  %10968 = extractvalue { ptr, i32 } %10967, 0
  store ptr %10968, ptr %5, align 8
  %10969 = extractvalue { ptr, i32 } %10967, 1
  store i32 %10969, ptr %6, align 4
  br label %10974

10970:                                            ; preds = %10925
  %10971 = landingpad { ptr, i32 }
          cleanup
  %10972 = extractvalue { ptr, i32 } %10971, 0
  store ptr %10972, ptr %5, align 8
  %10973 = extractvalue { ptr, i32 } %10971, 1
  store i32 %10973, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %694) #5
  br label %10974

10974:                                            ; preds = %10970, %10966
  call void @llvm.lifetime.end.p0(i64 24, ptr %694) #5
  br label %12015

10975:                                            ; preds = %10928
  %10976 = landingpad { ptr, i32 }
          cleanup
  %10977 = extractvalue { ptr, i32 } %10976, 0
  store ptr %10977, ptr %5, align 8
  %10978 = extractvalue { ptr, i32 } %10976, 1
  store i32 %10978, ptr %6, align 4
  br label %10983

10979:                                            ; preds = %10929
  %10980 = landingpad { ptr, i32 }
          cleanup
  %10981 = extractvalue { ptr, i32 } %10980, 0
  store ptr %10981, ptr %5, align 8
  %10982 = extractvalue { ptr, i32 } %10980, 1
  store i32 %10982, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %695) #5
  br label %10983

10983:                                            ; preds = %10979, %10975
  call void @llvm.lifetime.end.p0(i64 24, ptr %695) #5
  br label %12015

10984:                                            ; preds = %10932
  %10985 = landingpad { ptr, i32 }
          cleanup
  %10986 = extractvalue { ptr, i32 } %10985, 0
  store ptr %10986, ptr %5, align 8
  %10987 = extractvalue { ptr, i32 } %10985, 1
  store i32 %10987, ptr %6, align 4
  br label %10992

10988:                                            ; preds = %10933
  %10989 = landingpad { ptr, i32 }
          cleanup
  %10990 = extractvalue { ptr, i32 } %10989, 0
  store ptr %10990, ptr %5, align 8
  %10991 = extractvalue { ptr, i32 } %10989, 1
  store i32 %10991, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %696) #5
  br label %10992

10992:                                            ; preds = %10988, %10984
  call void @llvm.lifetime.end.p0(i64 24, ptr %696) #5
  br label %12015

10993:                                            ; preds = %10939
  %10994 = landingpad { ptr, i32 }
          cleanup
  %10995 = extractvalue { ptr, i32 } %10994, 0
  store ptr %10995, ptr %5, align 8
  %10996 = extractvalue { ptr, i32 } %10994, 1
  store i32 %10996, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %697) #5
  br label %12015

10997:                                            ; preds = %10947
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %10998 unwind label %1026

10998:                                            ; preds = %10997
  call void @llvm.lifetime.start.p0(i64 1, ptr %698) #5
  store i8 0, ptr %698, align 1, !tbaa !9
  %10999 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %11000 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %10999, ptr noundef nonnull align 1 dereferenceable(1) %698)
          to label %11001 unwind label %11036

11001:                                            ; preds = %10998
  call void @llvm.lifetime.end.p0(i64 1, ptr %698) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11002 unwind label %1026

11002:                                            ; preds = %11001
  call void @llvm.lifetime.start.p0(i64 24, ptr %699) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %699, i32 noundef 288)
          to label %11003 unwind label %11040

11003:                                            ; preds = %11002
  %11004 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %11005 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11004, ptr noundef nonnull align 8 dereferenceable(24) %699)
          to label %11006 unwind label %11044

11006:                                            ; preds = %11003
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %699) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %699) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %700) #5
  %11007 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %27, i32 noundef 6, i32 noundef 0)
          to label %11008 unwind label %11049

11008:                                            ; preds = %11006
  call void @llvm.lifetime.start.p0(i64 24, ptr %701) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %701, i32 noundef 0)
          to label %11009 unwind label %11053

11009:                                            ; preds = %11008
  %11010 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %11007, ptr noundef nonnull align 8 dereferenceable(8) %701)
          to label %11011 unwind label %11057

11011:                                            ; preds = %11009
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %700, ptr noundef nonnull align 1 dereferenceable(1) %11010)
          to label %11012 unwind label %11057

11012:                                            ; preds = %11011
  %11013 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %11014 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11013, ptr noundef nonnull align 8 dereferenceable(24) %700)
          to label %11015 unwind label %11061

11015:                                            ; preds = %11012
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %700) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %701) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %701) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %700) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %702) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %702, i32 noundef 1)
          to label %11016 unwind label %11068

11016:                                            ; preds = %11015
  %11017 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %11018 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11017, ptr noundef nonnull align 8 dereferenceable(24) %702)
          to label %11019 unwind label %11072

11019:                                            ; preds = %11016
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %702) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %702) #5
  %11020 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %11021 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11020, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %11022 unwind label %1026

11022:                                            ; preds = %11019
  call void @llvm.lifetime.start.p0(i64 1, ptr %703) #5
  store i8 1, ptr %703, align 1, !tbaa !9
  %11023 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %11024 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11023, ptr noundef nonnull align 1 dereferenceable(1) %703)
          to label %11025 unwind label %11077

11025:                                            ; preds = %11022
  call void @llvm.lifetime.end.p0(i64 1, ptr %703) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11026 unwind label %1026

11026:                                            ; preds = %11025
  br label %11027

11027:                                            ; preds = %11035, %11026
  %11028 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %11029 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %11028)
          to label %11030 unwind label %1026

11030:                                            ; preds = %11027
  %11031 = load i8, ptr %11029, align 1, !tbaa !9, !range !11, !noundef !12
  %11032 = trunc i8 %11031 to i1
  %11033 = xor i1 %11032, true
  br i1 %11033, label %11034, label %11081

11034:                                            ; preds = %11030
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11035 unwind label %1026

11035:                                            ; preds = %11034
  br label %11027, !llvm.loop !145

11036:                                            ; preds = %10998
  %11037 = landingpad { ptr, i32 }
          cleanup
  %11038 = extractvalue { ptr, i32 } %11037, 0
  store ptr %11038, ptr %5, align 8
  %11039 = extractvalue { ptr, i32 } %11037, 1
  store i32 %11039, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %698) #5
  br label %12015

11040:                                            ; preds = %11002
  %11041 = landingpad { ptr, i32 }
          cleanup
  %11042 = extractvalue { ptr, i32 } %11041, 0
  store ptr %11042, ptr %5, align 8
  %11043 = extractvalue { ptr, i32 } %11041, 1
  store i32 %11043, ptr %6, align 4
  br label %11048

11044:                                            ; preds = %11003
  %11045 = landingpad { ptr, i32 }
          cleanup
  %11046 = extractvalue { ptr, i32 } %11045, 0
  store ptr %11046, ptr %5, align 8
  %11047 = extractvalue { ptr, i32 } %11045, 1
  store i32 %11047, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %699) #5
  br label %11048

11048:                                            ; preds = %11044, %11040
  call void @llvm.lifetime.end.p0(i64 24, ptr %699) #5
  br label %12015

11049:                                            ; preds = %11006
  %11050 = landingpad { ptr, i32 }
          cleanup
  %11051 = extractvalue { ptr, i32 } %11050, 0
  store ptr %11051, ptr %5, align 8
  %11052 = extractvalue { ptr, i32 } %11050, 1
  store i32 %11052, ptr %6, align 4
  br label %11067

11053:                                            ; preds = %11008
  %11054 = landingpad { ptr, i32 }
          cleanup
  %11055 = extractvalue { ptr, i32 } %11054, 0
  store ptr %11055, ptr %5, align 8
  %11056 = extractvalue { ptr, i32 } %11054, 1
  store i32 %11056, ptr %6, align 4
  br label %11066

11057:                                            ; preds = %11011, %11009
  %11058 = landingpad { ptr, i32 }
          cleanup
  %11059 = extractvalue { ptr, i32 } %11058, 0
  store ptr %11059, ptr %5, align 8
  %11060 = extractvalue { ptr, i32 } %11058, 1
  store i32 %11060, ptr %6, align 4
  br label %11065

11061:                                            ; preds = %11012
  %11062 = landingpad { ptr, i32 }
          cleanup
  %11063 = extractvalue { ptr, i32 } %11062, 0
  store ptr %11063, ptr %5, align 8
  %11064 = extractvalue { ptr, i32 } %11062, 1
  store i32 %11064, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %700) #5
  br label %11065

11065:                                            ; preds = %11061, %11057
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %701) #5
  br label %11066

11066:                                            ; preds = %11065, %11053
  call void @llvm.lifetime.end.p0(i64 24, ptr %701) #5
  br label %11067

11067:                                            ; preds = %11066, %11049
  call void @llvm.lifetime.end.p0(i64 24, ptr %700) #5
  br label %12015

11068:                                            ; preds = %11015
  %11069 = landingpad { ptr, i32 }
          cleanup
  %11070 = extractvalue { ptr, i32 } %11069, 0
  store ptr %11070, ptr %5, align 8
  %11071 = extractvalue { ptr, i32 } %11069, 1
  store i32 %11071, ptr %6, align 4
  br label %11076

11072:                                            ; preds = %11016
  %11073 = landingpad { ptr, i32 }
          cleanup
  %11074 = extractvalue { ptr, i32 } %11073, 0
  store ptr %11074, ptr %5, align 8
  %11075 = extractvalue { ptr, i32 } %11073, 1
  store i32 %11075, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %702) #5
  br label %11076

11076:                                            ; preds = %11072, %11068
  call void @llvm.lifetime.end.p0(i64 24, ptr %702) #5
  br label %12015

11077:                                            ; preds = %11022
  %11078 = landingpad { ptr, i32 }
          cleanup
  %11079 = extractvalue { ptr, i32 } %11078, 0
  store ptr %11079, ptr %5, align 8
  %11080 = extractvalue { ptr, i32 } %11078, 1
  store i32 %11080, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %703) #5
  br label %12015

11081:                                            ; preds = %11030
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11082 unwind label %1026

11082:                                            ; preds = %11081
  call void @llvm.lifetime.start.p0(i64 1, ptr %704) #5
  store i8 0, ptr %704, align 1, !tbaa !9
  %11083 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %11084 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11083, ptr noundef nonnull align 1 dereferenceable(1) %704)
          to label %11085 unwind label %11087

11085:                                            ; preds = %11082
  call void @llvm.lifetime.end.p0(i64 1, ptr %704) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11086 unwind label %1026

11086:                                            ; preds = %11085
  br label %11091

11087:                                            ; preds = %11082
  %11088 = landingpad { ptr, i32 }
          cleanup
  %11089 = extractvalue { ptr, i32 } %11088, 0
  store ptr %11089, ptr %5, align 8
  %11090 = extractvalue { ptr, i32 } %11088, 1
  store i32 %11090, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %704) #5
  br label %12015

11091:                                            ; preds = %11086, %9278
  br label %11913

11092:                                            ; preds = %2780
  %11093 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
          to label %11094 unwind label %1026

11094:                                            ; preds = %11092
  %11095 = icmp ne i64 %11093, 3
  br i1 %11095, label %11100, label %11096

11096:                                            ; preds = %11094
  %11097 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %15)
          to label %11098 unwind label %1026

11098:                                            ; preds = %11096
  %11099 = icmp eq i64 %11097, 0
  br i1 %11099, label %11100, label %11104

11100:                                            ; preds = %11098, %11094
  %11101 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 1)
          to label %11102 unwind label %1026

11102:                                            ; preds = %11100
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11103 unwind label %1026

11103:                                            ; preds = %11102
  br label %11908

11104:                                            ; preds = %11098
  %11105 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %33, ptr noundef nonnull align 8 dereferenceable(24) %33)
          to label %11106 unwind label %1026

11106:                                            ; preds = %11104
  %11107 = load i8, ptr %34, align 1, !tbaa !9, !range !11, !noundef !12
  %11108 = trunc i8 %11107 to i1
  %11109 = zext i1 %11108 to i8
  store i8 %11109, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11110 unwind label %1026

11110:                                            ; preds = %11106
  call void @llvm.lifetime.start.p0(i64 24, ptr %705) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %706) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %706, i32 noundef 24)
          to label %11111 unwind label %11140

11111:                                            ; preds = %11110
  %11112 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %706)
          to label %11113 unwind label %11144

11113:                                            ; preds = %11111
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %705, ptr noundef nonnull align 1 dereferenceable(1) %11112)
          to label %11114 unwind label %11144

11114:                                            ; preds = %11113
  %11115 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %11116 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11115, ptr noundef nonnull align 8 dereferenceable(24) %705)
          to label %11117 unwind label %11148

11117:                                            ; preds = %11114
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %705) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %706) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %706) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %705) #5
  %11118 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 0)
          to label %11119 unwind label %1026

11119:                                            ; preds = %11117
  %11120 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %11118)
          to label %11121 unwind label %1026

11121:                                            ; preds = %11119
  %11122 = icmp ne i64 %11120, 0
  br i1 %11122, label %11123, label %11163

11123:                                            ; preds = %11121
  %11124 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 128)
          to label %11125 unwind label %1026

11125:                                            ; preds = %11123
  %11126 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %10, i32 noundef 32)
          to label %11127 unwind label %1026

11127:                                            ; preds = %11125
  %11128 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 2)
          to label %11129 unwind label %1026

11129:                                            ; preds = %11127
  %11130 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %12, i32 noundef 272)
          to label %11131 unwind label %1026

11131:                                            ; preds = %11129
  %11132 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 64)
          to label %11133 unwind label %1026

11133:                                            ; preds = %11131
  %11134 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 10)
          to label %11135 unwind label %1026

11135:                                            ; preds = %11133
  call void @llvm.lifetime.start.p0(i64 24, ptr %707) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %707, i32 noundef 8)
          to label %11136 unwind label %11154

11136:                                            ; preds = %11135
  %11137 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %11138 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11137, ptr noundef nonnull align 8 dereferenceable(24) %707)
          to label %11139 unwind label %11158

11139:                                            ; preds = %11136
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %707) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %707) #5
  br label %11189

11140:                                            ; preds = %11110
  %11141 = landingpad { ptr, i32 }
          cleanup
  %11142 = extractvalue { ptr, i32 } %11141, 0
  store ptr %11142, ptr %5, align 8
  %11143 = extractvalue { ptr, i32 } %11141, 1
  store i32 %11143, ptr %6, align 4
  br label %11153

11144:                                            ; preds = %11113, %11111
  %11145 = landingpad { ptr, i32 }
          cleanup
  %11146 = extractvalue { ptr, i32 } %11145, 0
  store ptr %11146, ptr %5, align 8
  %11147 = extractvalue { ptr, i32 } %11145, 1
  store i32 %11147, ptr %6, align 4
  br label %11152

11148:                                            ; preds = %11114
  %11149 = landingpad { ptr, i32 }
          cleanup
  %11150 = extractvalue { ptr, i32 } %11149, 0
  store ptr %11150, ptr %5, align 8
  %11151 = extractvalue { ptr, i32 } %11149, 1
  store i32 %11151, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %705) #5
  br label %11152

11152:                                            ; preds = %11148, %11144
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %706) #5
  br label %11153

11153:                                            ; preds = %11152, %11140
  call void @llvm.lifetime.end.p0(i64 24, ptr %706) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %705) #5
  br label %12015

11154:                                            ; preds = %11135
  %11155 = landingpad { ptr, i32 }
          cleanup
  %11156 = extractvalue { ptr, i32 } %11155, 0
  store ptr %11156, ptr %5, align 8
  %11157 = extractvalue { ptr, i32 } %11155, 1
  store i32 %11157, ptr %6, align 4
  br label %11162

11158:                                            ; preds = %11136
  %11159 = landingpad { ptr, i32 }
          cleanup
  %11160 = extractvalue { ptr, i32 } %11159, 0
  store ptr %11160, ptr %5, align 8
  %11161 = extractvalue { ptr, i32 } %11159, 1
  store i32 %11161, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %707) #5
  br label %11162

11162:                                            ; preds = %11158, %11154
  call void @llvm.lifetime.end.p0(i64 24, ptr %707) #5
  br label %12015

11163:                                            ; preds = %11121
  %11164 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 160)
          to label %11165 unwind label %1026

11165:                                            ; preds = %11163
  %11166 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %10, i32 noundef 48)
          to label %11167 unwind label %1026

11167:                                            ; preds = %11165
  %11168 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 4)
          to label %11169 unwind label %1026

11169:                                            ; preds = %11167
  %11170 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %12, i32 noundef 288)
          to label %11171 unwind label %1026

11171:                                            ; preds = %11169
  %11172 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 96)
          to label %11173 unwind label %1026

11173:                                            ; preds = %11171
  %11174 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 11)
          to label %11175 unwind label %1026

11175:                                            ; preds = %11173
  call void @llvm.lifetime.start.p0(i64 24, ptr %708) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %708, i32 noundef 16)
          to label %11176 unwind label %11180

11176:                                            ; preds = %11175
  %11177 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %11178 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11177, ptr noundef nonnull align 8 dereferenceable(24) %708)
          to label %11179 unwind label %11184

11179:                                            ; preds = %11176
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %708) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %708) #5
  br label %11189

11180:                                            ; preds = %11175
  %11181 = landingpad { ptr, i32 }
          cleanup
  %11182 = extractvalue { ptr, i32 } %11181, 0
  store ptr %11182, ptr %5, align 8
  %11183 = extractvalue { ptr, i32 } %11181, 1
  store i32 %11183, ptr %6, align 4
  br label %11188

11184:                                            ; preds = %11176
  %11185 = landingpad { ptr, i32 }
          cleanup
  %11186 = extractvalue { ptr, i32 } %11185, 0
  store ptr %11186, ptr %5, align 8
  %11187 = extractvalue { ptr, i32 } %11185, 1
  store i32 %11187, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %708) #5
  br label %11188

11188:                                            ; preds = %11184, %11180
  call void @llvm.lifetime.end.p0(i64 24, ptr %708) #5
  br label %12015

11189:                                            ; preds = %11179, %11139
  call void @llvm.lifetime.start.p0(i64 24, ptr %709) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %709, i32 noundef 3)
          to label %11190 unwind label %11214

11190:                                            ; preds = %11189
  %11191 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %11192 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11191, ptr noundef nonnull align 8 dereferenceable(24) %709)
          to label %11193 unwind label %11218

11193:                                            ; preds = %11190
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %709) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %709) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %710) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %710, i32 noundef 3)
          to label %11194 unwind label %11223

11194:                                            ; preds = %11193
  %11195 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %11196 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11195, ptr noundef nonnull align 8 dereferenceable(24) %710)
          to label %11197 unwind label %11227

11197:                                            ; preds = %11194
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %710) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %710) #5
  %11198 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %11199 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11198, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %11200 unwind label %1026

11200:                                            ; preds = %11197
  call void @llvm.lifetime.start.p0(i64 1, ptr %711) #5
  store i8 1, ptr %711, align 1, !tbaa !9
  %11201 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %11202 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11201, ptr noundef nonnull align 1 dereferenceable(1) %711)
          to label %11203 unwind label %11232

11203:                                            ; preds = %11200
  call void @llvm.lifetime.end.p0(i64 1, ptr %711) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11204 unwind label %1026

11204:                                            ; preds = %11203
  br label %11205

11205:                                            ; preds = %11213, %11204
  %11206 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %11207 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %11206)
          to label %11208 unwind label %1026

11208:                                            ; preds = %11205
  %11209 = load i8, ptr %11207, align 1, !tbaa !9, !range !11, !noundef !12
  %11210 = trunc i8 %11209 to i1
  %11211 = xor i1 %11210, true
  br i1 %11211, label %11212, label %11236

11212:                                            ; preds = %11208
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11213 unwind label %1026

11213:                                            ; preds = %11212
  br label %11205, !llvm.loop !146

11214:                                            ; preds = %11189
  %11215 = landingpad { ptr, i32 }
          cleanup
  %11216 = extractvalue { ptr, i32 } %11215, 0
  store ptr %11216, ptr %5, align 8
  %11217 = extractvalue { ptr, i32 } %11215, 1
  store i32 %11217, ptr %6, align 4
  br label %11222

11218:                                            ; preds = %11190
  %11219 = landingpad { ptr, i32 }
          cleanup
  %11220 = extractvalue { ptr, i32 } %11219, 0
  store ptr %11220, ptr %5, align 8
  %11221 = extractvalue { ptr, i32 } %11219, 1
  store i32 %11221, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %709) #5
  br label %11222

11222:                                            ; preds = %11218, %11214
  call void @llvm.lifetime.end.p0(i64 24, ptr %709) #5
  br label %12015

11223:                                            ; preds = %11193
  %11224 = landingpad { ptr, i32 }
          cleanup
  %11225 = extractvalue { ptr, i32 } %11224, 0
  store ptr %11225, ptr %5, align 8
  %11226 = extractvalue { ptr, i32 } %11224, 1
  store i32 %11226, ptr %6, align 4
  br label %11231

11227:                                            ; preds = %11194
  %11228 = landingpad { ptr, i32 }
          cleanup
  %11229 = extractvalue { ptr, i32 } %11228, 0
  store ptr %11229, ptr %5, align 8
  %11230 = extractvalue { ptr, i32 } %11228, 1
  store i32 %11230, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %710) #5
  br label %11231

11231:                                            ; preds = %11227, %11223
  call void @llvm.lifetime.end.p0(i64 24, ptr %710) #5
  br label %12015

11232:                                            ; preds = %11200
  %11233 = landingpad { ptr, i32 }
          cleanup
  %11234 = extractvalue { ptr, i32 } %11233, 0
  store ptr %11234, ptr %5, align 8
  %11235 = extractvalue { ptr, i32 } %11233, 1
  store i32 %11235, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %711) #5
  br label %12015

11236:                                            ; preds = %11208
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11237 unwind label %1026

11237:                                            ; preds = %11236
  call void @llvm.lifetime.start.p0(i64 1, ptr %712) #5
  store i8 0, ptr %712, align 1, !tbaa !9
  %11238 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %11239 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11238, ptr noundef nonnull align 1 dereferenceable(1) %712)
          to label %11240 unwind label %11276

11240:                                            ; preds = %11237
  call void @llvm.lifetime.end.p0(i64 1, ptr %712) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11241 unwind label %1026

11241:                                            ; preds = %11240
  call void @llvm.lifetime.start.p0(i64 24, ptr %713) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %714) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %714, i32 noundef 27)
          to label %11242 unwind label %11280

11242:                                            ; preds = %11241
  %11243 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %714)
          to label %11244 unwind label %11284

11244:                                            ; preds = %11242
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %713, ptr noundef nonnull align 1 dereferenceable(1) %11243)
          to label %11245 unwind label %11284

11245:                                            ; preds = %11244
  %11246 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %11247 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11246, ptr noundef nonnull align 8 dereferenceable(24) %713)
          to label %11248 unwind label %11288

11248:                                            ; preds = %11245
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %713) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %714) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %714) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %713) #5
  %11249 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %11250 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11249, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %11251 unwind label %1026

11251:                                            ; preds = %11248
  call void @llvm.lifetime.start.p0(i64 24, ptr %715) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %715, i32 noundef 32)
          to label %11252 unwind label %11294

11252:                                            ; preds = %11251
  %11253 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %11254 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11253, ptr noundef nonnull align 8 dereferenceable(24) %715)
          to label %11255 unwind label %11298

11255:                                            ; preds = %11252
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %715) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %715) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %716) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %716, i32 noundef 3)
          to label %11256 unwind label %11303

11256:                                            ; preds = %11255
  %11257 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %11258 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11257, ptr noundef nonnull align 8 dereferenceable(24) %716)
          to label %11259 unwind label %11307

11259:                                            ; preds = %11256
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %716) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %716) #5
  %11260 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %11261 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11260, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %11262 unwind label %1026

11262:                                            ; preds = %11259
  call void @llvm.lifetime.start.p0(i64 1, ptr %717) #5
  store i8 1, ptr %717, align 1, !tbaa !9
  %11263 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %11264 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11263, ptr noundef nonnull align 1 dereferenceable(1) %717)
          to label %11265 unwind label %11312

11265:                                            ; preds = %11262
  call void @llvm.lifetime.end.p0(i64 1, ptr %717) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11266 unwind label %1026

11266:                                            ; preds = %11265
  br label %11267

11267:                                            ; preds = %11275, %11266
  %11268 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %11269 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %11268)
          to label %11270 unwind label %1026

11270:                                            ; preds = %11267
  %11271 = load i8, ptr %11269, align 1, !tbaa !9, !range !11, !noundef !12
  %11272 = trunc i8 %11271 to i1
  %11273 = xor i1 %11272, true
  br i1 %11273, label %11274, label %11316

11274:                                            ; preds = %11270
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11275 unwind label %1026

11275:                                            ; preds = %11274
  br label %11267, !llvm.loop !147

11276:                                            ; preds = %11237
  %11277 = landingpad { ptr, i32 }
          cleanup
  %11278 = extractvalue { ptr, i32 } %11277, 0
  store ptr %11278, ptr %5, align 8
  %11279 = extractvalue { ptr, i32 } %11277, 1
  store i32 %11279, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %712) #5
  br label %12015

11280:                                            ; preds = %11241
  %11281 = landingpad { ptr, i32 }
          cleanup
  %11282 = extractvalue { ptr, i32 } %11281, 0
  store ptr %11282, ptr %5, align 8
  %11283 = extractvalue { ptr, i32 } %11281, 1
  store i32 %11283, ptr %6, align 4
  br label %11293

11284:                                            ; preds = %11244, %11242
  %11285 = landingpad { ptr, i32 }
          cleanup
  %11286 = extractvalue { ptr, i32 } %11285, 0
  store ptr %11286, ptr %5, align 8
  %11287 = extractvalue { ptr, i32 } %11285, 1
  store i32 %11287, ptr %6, align 4
  br label %11292

11288:                                            ; preds = %11245
  %11289 = landingpad { ptr, i32 }
          cleanup
  %11290 = extractvalue { ptr, i32 } %11289, 0
  store ptr %11290, ptr %5, align 8
  %11291 = extractvalue { ptr, i32 } %11289, 1
  store i32 %11291, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %713) #5
  br label %11292

11292:                                            ; preds = %11288, %11284
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %714) #5
  br label %11293

11293:                                            ; preds = %11292, %11280
  call void @llvm.lifetime.end.p0(i64 24, ptr %714) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %713) #5
  br label %12015

11294:                                            ; preds = %11251
  %11295 = landingpad { ptr, i32 }
          cleanup
  %11296 = extractvalue { ptr, i32 } %11295, 0
  store ptr %11296, ptr %5, align 8
  %11297 = extractvalue { ptr, i32 } %11295, 1
  store i32 %11297, ptr %6, align 4
  br label %11302

11298:                                            ; preds = %11252
  %11299 = landingpad { ptr, i32 }
          cleanup
  %11300 = extractvalue { ptr, i32 } %11299, 0
  store ptr %11300, ptr %5, align 8
  %11301 = extractvalue { ptr, i32 } %11299, 1
  store i32 %11301, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %715) #5
  br label %11302

11302:                                            ; preds = %11298, %11294
  call void @llvm.lifetime.end.p0(i64 24, ptr %715) #5
  br label %12015

11303:                                            ; preds = %11255
  %11304 = landingpad { ptr, i32 }
          cleanup
  %11305 = extractvalue { ptr, i32 } %11304, 0
  store ptr %11305, ptr %5, align 8
  %11306 = extractvalue { ptr, i32 } %11304, 1
  store i32 %11306, ptr %6, align 4
  br label %11311

11307:                                            ; preds = %11256
  %11308 = landingpad { ptr, i32 }
          cleanup
  %11309 = extractvalue { ptr, i32 } %11308, 0
  store ptr %11309, ptr %5, align 8
  %11310 = extractvalue { ptr, i32 } %11308, 1
  store i32 %11310, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %716) #5
  br label %11311

11311:                                            ; preds = %11307, %11303
  call void @llvm.lifetime.end.p0(i64 24, ptr %716) #5
  br label %12015

11312:                                            ; preds = %11262
  %11313 = landingpad { ptr, i32 }
          cleanup
  %11314 = extractvalue { ptr, i32 } %11313, 0
  store ptr %11314, ptr %5, align 8
  %11315 = extractvalue { ptr, i32 } %11313, 1
  store i32 %11315, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %717) #5
  br label %12015

11316:                                            ; preds = %11270
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11317 unwind label %1026

11317:                                            ; preds = %11316
  call void @llvm.lifetime.start.p0(i64 1, ptr %718) #5
  store i8 0, ptr %718, align 1, !tbaa !9
  %11318 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %11319 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11318, ptr noundef nonnull align 1 dereferenceable(1) %718)
          to label %11320 unwind label %11352

11320:                                            ; preds = %11317
  call void @llvm.lifetime.end.p0(i64 1, ptr %718) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11321 unwind label %1026

11321:                                            ; preds = %11320
  call void @llvm.lifetime.start.p0(i64 24, ptr %719) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %720) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %720, i32 noundef 59)
          to label %11322 unwind label %11356

11322:                                            ; preds = %11321
  %11323 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %720)
          to label %11324 unwind label %11360

11324:                                            ; preds = %11322
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %719, ptr noundef nonnull align 1 dereferenceable(1) %11323)
          to label %11325 unwind label %11360

11325:                                            ; preds = %11324
  %11326 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %11327 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11326, ptr noundef nonnull align 8 dereferenceable(24) %719)
          to label %11328 unwind label %11364

11328:                                            ; preds = %11325
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %719) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %720) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %720) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %719) #5
  %11329 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %11330 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11329, ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %11331 unwind label %1026

11331:                                            ; preds = %11328
  call void @llvm.lifetime.start.p0(i64 24, ptr %721) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %721, i32 noundef 3)
          to label %11332 unwind label %11370

11332:                                            ; preds = %11331
  %11333 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %11334 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11333, ptr noundef nonnull align 8 dereferenceable(24) %721)
          to label %11335 unwind label %11374

11335:                                            ; preds = %11332
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %721) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %721) #5
  %11336 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %11337 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11336, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %11338 unwind label %1026

11338:                                            ; preds = %11335
  call void @llvm.lifetime.start.p0(i64 1, ptr %722) #5
  store i8 1, ptr %722, align 1, !tbaa !9
  %11339 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %11340 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11339, ptr noundef nonnull align 1 dereferenceable(1) %722)
          to label %11341 unwind label %11379

11341:                                            ; preds = %11338
  call void @llvm.lifetime.end.p0(i64 1, ptr %722) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11342 unwind label %1026

11342:                                            ; preds = %11341
  br label %11343

11343:                                            ; preds = %11351, %11342
  %11344 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %11345 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %11344)
          to label %11346 unwind label %1026

11346:                                            ; preds = %11343
  %11347 = load i8, ptr %11345, align 1, !tbaa !9, !range !11, !noundef !12
  %11348 = trunc i8 %11347 to i1
  %11349 = xor i1 %11348, true
  br i1 %11349, label %11350, label %11383

11350:                                            ; preds = %11346
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11351 unwind label %1026

11351:                                            ; preds = %11350
  br label %11343, !llvm.loop !148

11352:                                            ; preds = %11317
  %11353 = landingpad { ptr, i32 }
          cleanup
  %11354 = extractvalue { ptr, i32 } %11353, 0
  store ptr %11354, ptr %5, align 8
  %11355 = extractvalue { ptr, i32 } %11353, 1
  store i32 %11355, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %718) #5
  br label %12015

11356:                                            ; preds = %11321
  %11357 = landingpad { ptr, i32 }
          cleanup
  %11358 = extractvalue { ptr, i32 } %11357, 0
  store ptr %11358, ptr %5, align 8
  %11359 = extractvalue { ptr, i32 } %11357, 1
  store i32 %11359, ptr %6, align 4
  br label %11369

11360:                                            ; preds = %11324, %11322
  %11361 = landingpad { ptr, i32 }
          cleanup
  %11362 = extractvalue { ptr, i32 } %11361, 0
  store ptr %11362, ptr %5, align 8
  %11363 = extractvalue { ptr, i32 } %11361, 1
  store i32 %11363, ptr %6, align 4
  br label %11368

11364:                                            ; preds = %11325
  %11365 = landingpad { ptr, i32 }
          cleanup
  %11366 = extractvalue { ptr, i32 } %11365, 0
  store ptr %11366, ptr %5, align 8
  %11367 = extractvalue { ptr, i32 } %11365, 1
  store i32 %11367, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %719) #5
  br label %11368

11368:                                            ; preds = %11364, %11360
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %720) #5
  br label %11369

11369:                                            ; preds = %11368, %11356
  call void @llvm.lifetime.end.p0(i64 24, ptr %720) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %719) #5
  br label %12015

11370:                                            ; preds = %11331
  %11371 = landingpad { ptr, i32 }
          cleanup
  %11372 = extractvalue { ptr, i32 } %11371, 0
  store ptr %11372, ptr %5, align 8
  %11373 = extractvalue { ptr, i32 } %11371, 1
  store i32 %11373, ptr %6, align 4
  br label %11378

11374:                                            ; preds = %11332
  %11375 = landingpad { ptr, i32 }
          cleanup
  %11376 = extractvalue { ptr, i32 } %11375, 0
  store ptr %11376, ptr %5, align 8
  %11377 = extractvalue { ptr, i32 } %11375, 1
  store i32 %11377, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %721) #5
  br label %11378

11378:                                            ; preds = %11374, %11370
  call void @llvm.lifetime.end.p0(i64 24, ptr %721) #5
  br label %12015

11379:                                            ; preds = %11338
  %11380 = landingpad { ptr, i32 }
          cleanup
  %11381 = extractvalue { ptr, i32 } %11380, 0
  store ptr %11381, ptr %5, align 8
  %11382 = extractvalue { ptr, i32 } %11380, 1
  store i32 %11382, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %722) #5
  br label %12015

11383:                                            ; preds = %11346
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11384 unwind label %1026

11384:                                            ; preds = %11383
  call void @llvm.lifetime.start.p0(i64 1, ptr %723) #5
  store i8 0, ptr %723, align 1, !tbaa !9
  %11385 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %11386 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11385, ptr noundef nonnull align 1 dereferenceable(1) %723)
          to label %11387 unwind label %11411

11387:                                            ; preds = %11384
  call void @llvm.lifetime.end.p0(i64 1, ptr %723) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11388 unwind label %1026

11388:                                            ; preds = %11387
  call void @llvm.lifetime.start.p0(i64 24, ptr %724) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %725) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %725, i32 noundef -37)
          to label %11389 unwind label %11415

11389:                                            ; preds = %11388
  %11390 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %725)
          to label %11391 unwind label %11419

11391:                                            ; preds = %11389
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %724, ptr noundef nonnull align 1 dereferenceable(1) %11390)
          to label %11392 unwind label %11419

11392:                                            ; preds = %11391
  %11393 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %11394 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11393, ptr noundef nonnull align 8 dereferenceable(24) %724)
          to label %11395 unwind label %11423

11395:                                            ; preds = %11392
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %724) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %725) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %725) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %724) #5
  %11396 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %11397 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11396, ptr noundef nonnull align 8 dereferenceable(24) %10)
          to label %11398 unwind label %1026

11398:                                            ; preds = %11395
  %11399 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 7
  %11400 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %11399)
          to label %11401 unwind label %1026

11401:                                            ; preds = %11398
  %11402 = load i8, ptr %11400, align 1, !tbaa !9, !range !11, !noundef !12
  %11403 = trunc i8 %11402 to i1
  br i1 %11403, label %11438, label %11404

11404:                                            ; preds = %11401
  %11405 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef -3743)
          to label %11406 unwind label %1026

11406:                                            ; preds = %11404
  call void @llvm.lifetime.start.p0(i64 24, ptr %726) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %726, i32 noundef 6)
          to label %11407 unwind label %11429

11407:                                            ; preds = %11406
  %11408 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %11409 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11408, ptr noundef nonnull align 8 dereferenceable(24) %726)
          to label %11410 unwind label %11433

11410:                                            ; preds = %11407
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %726) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %726) #5
  br label %11454

11411:                                            ; preds = %11384
  %11412 = landingpad { ptr, i32 }
          cleanup
  %11413 = extractvalue { ptr, i32 } %11412, 0
  store ptr %11413, ptr %5, align 8
  %11414 = extractvalue { ptr, i32 } %11412, 1
  store i32 %11414, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %723) #5
  br label %12015

11415:                                            ; preds = %11388
  %11416 = landingpad { ptr, i32 }
          cleanup
  %11417 = extractvalue { ptr, i32 } %11416, 0
  store ptr %11417, ptr %5, align 8
  %11418 = extractvalue { ptr, i32 } %11416, 1
  store i32 %11418, ptr %6, align 4
  br label %11428

11419:                                            ; preds = %11391, %11389
  %11420 = landingpad { ptr, i32 }
          cleanup
  %11421 = extractvalue { ptr, i32 } %11420, 0
  store ptr %11421, ptr %5, align 8
  %11422 = extractvalue { ptr, i32 } %11420, 1
  store i32 %11422, ptr %6, align 4
  br label %11427

11423:                                            ; preds = %11392
  %11424 = landingpad { ptr, i32 }
          cleanup
  %11425 = extractvalue { ptr, i32 } %11424, 0
  store ptr %11425, ptr %5, align 8
  %11426 = extractvalue { ptr, i32 } %11424, 1
  store i32 %11426, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %724) #5
  br label %11427

11427:                                            ; preds = %11423, %11419
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %725) #5
  br label %11428

11428:                                            ; preds = %11427, %11415
  call void @llvm.lifetime.end.p0(i64 24, ptr %725) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %724) #5
  br label %12015

11429:                                            ; preds = %11406
  %11430 = landingpad { ptr, i32 }
          cleanup
  %11431 = extractvalue { ptr, i32 } %11430, 0
  store ptr %11431, ptr %5, align 8
  %11432 = extractvalue { ptr, i32 } %11430, 1
  store i32 %11432, ptr %6, align 4
  br label %11437

11433:                                            ; preds = %11407
  %11434 = landingpad { ptr, i32 }
          cleanup
  %11435 = extractvalue { ptr, i32 } %11434, 0
  store ptr %11435, ptr %5, align 8
  %11436 = extractvalue { ptr, i32 } %11434, 1
  store i32 %11436, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %726) #5
  br label %11437

11437:                                            ; preds = %11433, %11429
  call void @llvm.lifetime.end.p0(i64 24, ptr %726) #5
  br label %12015

11438:                                            ; preds = %11401
  %11439 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef -4001)
          to label %11440 unwind label %1026

11440:                                            ; preds = %11438
  call void @llvm.lifetime.start.p0(i64 24, ptr %727) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %727, i32 noundef 4)
          to label %11441 unwind label %11445

11441:                                            ; preds = %11440
  %11442 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %11443 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11442, ptr noundef nonnull align 8 dereferenceable(24) %727)
          to label %11444 unwind label %11449

11444:                                            ; preds = %11441
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %727) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %727) #5
  br label %11454

11445:                                            ; preds = %11440
  %11446 = landingpad { ptr, i32 }
          cleanup
  %11447 = extractvalue { ptr, i32 } %11446, 0
  store ptr %11447, ptr %5, align 8
  %11448 = extractvalue { ptr, i32 } %11446, 1
  store i32 %11448, ptr %6, align 4
  br label %11453

11449:                                            ; preds = %11441
  %11450 = landingpad { ptr, i32 }
          cleanup
  %11451 = extractvalue { ptr, i32 } %11450, 0
  store ptr %11451, ptr %5, align 8
  %11452 = extractvalue { ptr, i32 } %11450, 1
  store i32 %11452, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %727) #5
  br label %11453

11453:                                            ; preds = %11449, %11445
  call void @llvm.lifetime.end.p0(i64 24, ptr %727) #5
  br label %12015

11454:                                            ; preds = %11444, %11410
  call void @llvm.lifetime.start.p0(i64 24, ptr %728) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %728, i32 noundef 3)
          to label %11455 unwind label %11475

11455:                                            ; preds = %11454
  %11456 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %11457 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11456, ptr noundef nonnull align 8 dereferenceable(24) %728)
          to label %11458 unwind label %11479

11458:                                            ; preds = %11455
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %728) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %728) #5
  %11459 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %11460 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11459, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %11461 unwind label %1026

11461:                                            ; preds = %11458
  call void @llvm.lifetime.start.p0(i64 1, ptr %729) #5
  store i8 1, ptr %729, align 1, !tbaa !9
  %11462 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %11463 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11462, ptr noundef nonnull align 1 dereferenceable(1) %729)
          to label %11464 unwind label %11484

11464:                                            ; preds = %11461
  call void @llvm.lifetime.end.p0(i64 1, ptr %729) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11465 unwind label %1026

11465:                                            ; preds = %11464
  br label %11466

11466:                                            ; preds = %11474, %11465
  %11467 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %11468 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %11467)
          to label %11469 unwind label %1026

11469:                                            ; preds = %11466
  %11470 = load i8, ptr %11468, align 1, !tbaa !9, !range !11, !noundef !12
  %11471 = trunc i8 %11470 to i1
  %11472 = xor i1 %11471, true
  br i1 %11472, label %11473, label %11488

11473:                                            ; preds = %11469
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11474 unwind label %1026

11474:                                            ; preds = %11473
  br label %11466, !llvm.loop !149

11475:                                            ; preds = %11454
  %11476 = landingpad { ptr, i32 }
          cleanup
  %11477 = extractvalue { ptr, i32 } %11476, 0
  store ptr %11477, ptr %5, align 8
  %11478 = extractvalue { ptr, i32 } %11476, 1
  store i32 %11478, ptr %6, align 4
  br label %11483

11479:                                            ; preds = %11455
  %11480 = landingpad { ptr, i32 }
          cleanup
  %11481 = extractvalue { ptr, i32 } %11480, 0
  store ptr %11481, ptr %5, align 8
  %11482 = extractvalue { ptr, i32 } %11480, 1
  store i32 %11482, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %728) #5
  br label %11483

11483:                                            ; preds = %11479, %11475
  call void @llvm.lifetime.end.p0(i64 24, ptr %728) #5
  br label %12015

11484:                                            ; preds = %11461
  %11485 = landingpad { ptr, i32 }
          cleanup
  %11486 = extractvalue { ptr, i32 } %11485, 0
  store ptr %11486, ptr %5, align 8
  %11487 = extractvalue { ptr, i32 } %11485, 1
  store i32 %11487, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %729) #5
  br label %12015

11488:                                            ; preds = %11469
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11489 unwind label %1026

11489:                                            ; preds = %11488
  call void @llvm.lifetime.start.p0(i64 1, ptr %730) #5
  store i8 0, ptr %730, align 1, !tbaa !9
  %11490 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %11491 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11490, ptr noundef nonnull align 1 dereferenceable(1) %730)
          to label %11492 unwind label %11531

11492:                                            ; preds = %11489
  call void @llvm.lifetime.end.p0(i64 1, ptr %730) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11493 unwind label %1026

11493:                                            ; preds = %11492
  call void @llvm.lifetime.start.p0(i64 24, ptr %731) #5
  %11494 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %27, i32 noundef 6, i32 noundef 0)
          to label %11495 unwind label %11535

11495:                                            ; preds = %11493
  %11496 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 6, i32 noundef 0)
          to label %11497 unwind label %11535

11497:                                            ; preds = %11495
  %11498 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %11494, ptr noundef nonnull align 8 dereferenceable(8) %11496)
          to label %11499 unwind label %11535

11499:                                            ; preds = %11497
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %731, ptr noundef nonnull align 1 dereferenceable(1) %11498)
          to label %11500 unwind label %11535

11500:                                            ; preds = %11499
  %11501 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %11502 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11501, ptr noundef nonnull align 8 dereferenceable(24) %731)
          to label %11503 unwind label %11539

11503:                                            ; preds = %11500
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %731) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %731) #5
  %11504 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %11505 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11504, ptr noundef nonnull align 8 dereferenceable(24) %11)
          to label %11506 unwind label %1026

11506:                                            ; preds = %11503
  call void @llvm.lifetime.start.p0(i64 24, ptr %732) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %732, i32 noundef 1)
          to label %11507 unwind label %11544

11507:                                            ; preds = %11506
  %11508 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %11509 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11508, ptr noundef nonnull align 8 dereferenceable(24) %732)
          to label %11510 unwind label %11548

11510:                                            ; preds = %11507
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %732) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %732) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %733) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %733, i32 noundef 3)
          to label %11511 unwind label %11553

11511:                                            ; preds = %11510
  %11512 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %11513 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11512, ptr noundef nonnull align 8 dereferenceable(24) %733)
          to label %11514 unwind label %11557

11514:                                            ; preds = %11511
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %733) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %733) #5
  %11515 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %11516 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11515, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %11517 unwind label %1026

11517:                                            ; preds = %11514
  call void @llvm.lifetime.start.p0(i64 1, ptr %734) #5
  store i8 1, ptr %734, align 1, !tbaa !9
  %11518 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %11519 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11518, ptr noundef nonnull align 1 dereferenceable(1) %734)
          to label %11520 unwind label %11562

11520:                                            ; preds = %11517
  call void @llvm.lifetime.end.p0(i64 1, ptr %734) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11521 unwind label %1026

11521:                                            ; preds = %11520
  br label %11522

11522:                                            ; preds = %11530, %11521
  %11523 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %11524 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %11523)
          to label %11525 unwind label %1026

11525:                                            ; preds = %11522
  %11526 = load i8, ptr %11524, align 1, !tbaa !9, !range !11, !noundef !12
  %11527 = trunc i8 %11526 to i1
  %11528 = xor i1 %11527, true
  br i1 %11528, label %11529, label %11566

11529:                                            ; preds = %11525
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11530 unwind label %1026

11530:                                            ; preds = %11529
  br label %11522, !llvm.loop !150

11531:                                            ; preds = %11489
  %11532 = landingpad { ptr, i32 }
          cleanup
  %11533 = extractvalue { ptr, i32 } %11532, 0
  store ptr %11533, ptr %5, align 8
  %11534 = extractvalue { ptr, i32 } %11532, 1
  store i32 %11534, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %730) #5
  br label %12015

11535:                                            ; preds = %11499, %11497, %11495, %11493
  %11536 = landingpad { ptr, i32 }
          cleanup
  %11537 = extractvalue { ptr, i32 } %11536, 0
  store ptr %11537, ptr %5, align 8
  %11538 = extractvalue { ptr, i32 } %11536, 1
  store i32 %11538, ptr %6, align 4
  br label %11543

11539:                                            ; preds = %11500
  %11540 = landingpad { ptr, i32 }
          cleanup
  %11541 = extractvalue { ptr, i32 } %11540, 0
  store ptr %11541, ptr %5, align 8
  %11542 = extractvalue { ptr, i32 } %11540, 1
  store i32 %11542, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %731) #5
  br label %11543

11543:                                            ; preds = %11539, %11535
  call void @llvm.lifetime.end.p0(i64 24, ptr %731) #5
  br label %12015

11544:                                            ; preds = %11506
  %11545 = landingpad { ptr, i32 }
          cleanup
  %11546 = extractvalue { ptr, i32 } %11545, 0
  store ptr %11546, ptr %5, align 8
  %11547 = extractvalue { ptr, i32 } %11545, 1
  store i32 %11547, ptr %6, align 4
  br label %11552

11548:                                            ; preds = %11507
  %11549 = landingpad { ptr, i32 }
          cleanup
  %11550 = extractvalue { ptr, i32 } %11549, 0
  store ptr %11550, ptr %5, align 8
  %11551 = extractvalue { ptr, i32 } %11549, 1
  store i32 %11551, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %732) #5
  br label %11552

11552:                                            ; preds = %11548, %11544
  call void @llvm.lifetime.end.p0(i64 24, ptr %732) #5
  br label %12015

11553:                                            ; preds = %11510
  %11554 = landingpad { ptr, i32 }
          cleanup
  %11555 = extractvalue { ptr, i32 } %11554, 0
  store ptr %11555, ptr %5, align 8
  %11556 = extractvalue { ptr, i32 } %11554, 1
  store i32 %11556, ptr %6, align 4
  br label %11561

11557:                                            ; preds = %11511
  %11558 = landingpad { ptr, i32 }
          cleanup
  %11559 = extractvalue { ptr, i32 } %11558, 0
  store ptr %11559, ptr %5, align 8
  %11560 = extractvalue { ptr, i32 } %11558, 1
  store i32 %11560, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %733) #5
  br label %11561

11561:                                            ; preds = %11557, %11553
  call void @llvm.lifetime.end.p0(i64 24, ptr %733) #5
  br label %12015

11562:                                            ; preds = %11517
  %11563 = landingpad { ptr, i32 }
          cleanup
  %11564 = extractvalue { ptr, i32 } %11563, 0
  store ptr %11564, ptr %5, align 8
  %11565 = extractvalue { ptr, i32 } %11563, 1
  store i32 %11565, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %734) #5
  br label %12015

11566:                                            ; preds = %11525
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11567 unwind label %1026

11567:                                            ; preds = %11566
  call void @llvm.lifetime.start.p0(i64 1, ptr %735) #5
  store i8 0, ptr %735, align 1, !tbaa !9
  %11568 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %11569 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11568, ptr noundef nonnull align 1 dereferenceable(1) %735)
          to label %11570 unwind label %11610

11570:                                            ; preds = %11567
  call void @llvm.lifetime.end.p0(i64 1, ptr %735) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11571 unwind label %1026

11571:                                            ; preds = %11570
  call void @llvm.lifetime.start.p0(i64 24, ptr %736) #5
  %11572 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %27, i32 noundef 6, i32 noundef 0)
          to label %11573 unwind label %11614

11573:                                            ; preds = %11571
  %11574 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 13, i32 noundef 7)
          to label %11575 unwind label %11614

11575:                                            ; preds = %11573
  %11576 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %11572, ptr noundef nonnull align 8 dereferenceable(8) %11574)
          to label %11577 unwind label %11614

11577:                                            ; preds = %11575
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %736, ptr noundef nonnull align 1 dereferenceable(1) %11576)
          to label %11578 unwind label %11614

11578:                                            ; preds = %11577
  %11579 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %11580 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11579, ptr noundef nonnull align 8 dereferenceable(24) %736)
          to label %11581 unwind label %11618

11581:                                            ; preds = %11578
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %736) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %736) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %737) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %737, i32 noundef 20)
          to label %11582 unwind label %11623

11582:                                            ; preds = %11581
  %11583 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %11584 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11583, ptr noundef nonnull align 8 dereferenceable(24) %737)
          to label %11585 unwind label %11627

11585:                                            ; preds = %11582
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %737) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %737) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %738) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %738, i32 noundef 4)
          to label %11586 unwind label %11632

11586:                                            ; preds = %11585
  %11587 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %11588 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11587, ptr noundef nonnull align 8 dereferenceable(24) %738)
          to label %11589 unwind label %11636

11589:                                            ; preds = %11586
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %738) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %738) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %739) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %739, i32 noundef 3)
          to label %11590 unwind label %11641

11590:                                            ; preds = %11589
  %11591 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %11592 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11591, ptr noundef nonnull align 8 dereferenceable(24) %739)
          to label %11593 unwind label %11645

11593:                                            ; preds = %11590
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %739) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %739) #5
  %11594 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %11595 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11594, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %11596 unwind label %1026

11596:                                            ; preds = %11593
  call void @llvm.lifetime.start.p0(i64 1, ptr %740) #5
  store i8 1, ptr %740, align 1, !tbaa !9
  %11597 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %11598 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11597, ptr noundef nonnull align 1 dereferenceable(1) %740)
          to label %11599 unwind label %11650

11599:                                            ; preds = %11596
  call void @llvm.lifetime.end.p0(i64 1, ptr %740) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11600 unwind label %1026

11600:                                            ; preds = %11599
  br label %11601

11601:                                            ; preds = %11609, %11600
  %11602 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %11603 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %11602)
          to label %11604 unwind label %1026

11604:                                            ; preds = %11601
  %11605 = load i8, ptr %11603, align 1, !tbaa !9, !range !11, !noundef !12
  %11606 = trunc i8 %11605 to i1
  %11607 = xor i1 %11606, true
  br i1 %11607, label %11608, label %11654

11608:                                            ; preds = %11604
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11609 unwind label %1026

11609:                                            ; preds = %11608
  br label %11601, !llvm.loop !151

11610:                                            ; preds = %11567
  %11611 = landingpad { ptr, i32 }
          cleanup
  %11612 = extractvalue { ptr, i32 } %11611, 0
  store ptr %11612, ptr %5, align 8
  %11613 = extractvalue { ptr, i32 } %11611, 1
  store i32 %11613, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %735) #5
  br label %12015

11614:                                            ; preds = %11577, %11575, %11573, %11571
  %11615 = landingpad { ptr, i32 }
          cleanup
  %11616 = extractvalue { ptr, i32 } %11615, 0
  store ptr %11616, ptr %5, align 8
  %11617 = extractvalue { ptr, i32 } %11615, 1
  store i32 %11617, ptr %6, align 4
  br label %11622

11618:                                            ; preds = %11578
  %11619 = landingpad { ptr, i32 }
          cleanup
  %11620 = extractvalue { ptr, i32 } %11619, 0
  store ptr %11620, ptr %5, align 8
  %11621 = extractvalue { ptr, i32 } %11619, 1
  store i32 %11621, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %736) #5
  br label %11622

11622:                                            ; preds = %11618, %11614
  call void @llvm.lifetime.end.p0(i64 24, ptr %736) #5
  br label %12015

11623:                                            ; preds = %11581
  %11624 = landingpad { ptr, i32 }
          cleanup
  %11625 = extractvalue { ptr, i32 } %11624, 0
  store ptr %11625, ptr %5, align 8
  %11626 = extractvalue { ptr, i32 } %11624, 1
  store i32 %11626, ptr %6, align 4
  br label %11631

11627:                                            ; preds = %11582
  %11628 = landingpad { ptr, i32 }
          cleanup
  %11629 = extractvalue { ptr, i32 } %11628, 0
  store ptr %11629, ptr %5, align 8
  %11630 = extractvalue { ptr, i32 } %11628, 1
  store i32 %11630, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %737) #5
  br label %11631

11631:                                            ; preds = %11627, %11623
  call void @llvm.lifetime.end.p0(i64 24, ptr %737) #5
  br label %12015

11632:                                            ; preds = %11585
  %11633 = landingpad { ptr, i32 }
          cleanup
  %11634 = extractvalue { ptr, i32 } %11633, 0
  store ptr %11634, ptr %5, align 8
  %11635 = extractvalue { ptr, i32 } %11633, 1
  store i32 %11635, ptr %6, align 4
  br label %11640

11636:                                            ; preds = %11586
  %11637 = landingpad { ptr, i32 }
          cleanup
  %11638 = extractvalue { ptr, i32 } %11637, 0
  store ptr %11638, ptr %5, align 8
  %11639 = extractvalue { ptr, i32 } %11637, 1
  store i32 %11639, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %738) #5
  br label %11640

11640:                                            ; preds = %11636, %11632
  call void @llvm.lifetime.end.p0(i64 24, ptr %738) #5
  br label %12015

11641:                                            ; preds = %11589
  %11642 = landingpad { ptr, i32 }
          cleanup
  %11643 = extractvalue { ptr, i32 } %11642, 0
  store ptr %11643, ptr %5, align 8
  %11644 = extractvalue { ptr, i32 } %11642, 1
  store i32 %11644, ptr %6, align 4
  br label %11649

11645:                                            ; preds = %11590
  %11646 = landingpad { ptr, i32 }
          cleanup
  %11647 = extractvalue { ptr, i32 } %11646, 0
  store ptr %11647, ptr %5, align 8
  %11648 = extractvalue { ptr, i32 } %11646, 1
  store i32 %11648, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %739) #5
  br label %11649

11649:                                            ; preds = %11645, %11641
  call void @llvm.lifetime.end.p0(i64 24, ptr %739) #5
  br label %12015

11650:                                            ; preds = %11596
  %11651 = landingpad { ptr, i32 }
          cleanup
  %11652 = extractvalue { ptr, i32 } %11651, 0
  store ptr %11652, ptr %5, align 8
  %11653 = extractvalue { ptr, i32 } %11651, 1
  store i32 %11653, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %740) #5
  br label %12015

11654:                                            ; preds = %11604
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11655 unwind label %1026

11655:                                            ; preds = %11654
  call void @llvm.lifetime.start.p0(i64 1, ptr %741) #5
  store i8 0, ptr %741, align 1, !tbaa !9
  %11656 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %11657 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11656, ptr noundef nonnull align 1 dereferenceable(1) %741)
          to label %11658 unwind label %11698

11658:                                            ; preds = %11655
  call void @llvm.lifetime.end.p0(i64 1, ptr %741) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11659 unwind label %1026

11659:                                            ; preds = %11658
  call void @llvm.lifetime.start.p0(i64 24, ptr %742) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %743) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %743, i32 noundef 0)
          to label %11660 unwind label %11702

11660:                                            ; preds = %11659
  %11661 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %743)
          to label %11662 unwind label %11706

11662:                                            ; preds = %11660
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %742, ptr noundef nonnull align 1 dereferenceable(1) %11661)
          to label %11663 unwind label %11706

11663:                                            ; preds = %11662
  %11664 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %11665 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11664, ptr noundef nonnull align 8 dereferenceable(24) %742)
          to label %11666 unwind label %11710

11666:                                            ; preds = %11663
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %742) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %743) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %743) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %742) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %744) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %744, i32 noundef 0)
          to label %11667 unwind label %11716

11667:                                            ; preds = %11666
  %11668 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %11669 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11668, ptr noundef nonnull align 8 dereferenceable(24) %744)
          to label %11670 unwind label %11720

11670:                                            ; preds = %11667
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %744) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %744) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %745) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %746) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %746, i32 noundef 0)
          to label %11671 unwind label %11725

11671:                                            ; preds = %11670
  %11672 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %746, ptr noundef nonnull align 8 dereferenceable(8) %15)
          to label %11673 unwind label %11729

11673:                                            ; preds = %11671
  call void @llvm.lifetime.start.p0(i64 24, ptr %747) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %747, i32 noundef 0)
          to label %11674 unwind label %11733

11674:                                            ; preds = %11673
  %11675 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %11672, ptr noundef nonnull align 8 dereferenceable(8) %747)
          to label %11676 unwind label %11737

11676:                                            ; preds = %11674
  invoke void @_ZN5sc_dt6sc_intILi7EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %745, ptr noundef nonnull align 1 dereferenceable(1) %11675)
          to label %11677 unwind label %11737

11677:                                            ; preds = %11676
  %11678 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %11679 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11678, ptr noundef nonnull align 8 dereferenceable(24) %745)
          to label %11680 unwind label %11741

11680:                                            ; preds = %11677
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %745) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %747) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %747) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %746) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %746) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %745) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %748) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %748, i32 noundef -3)
          to label %11681 unwind label %11749

11681:                                            ; preds = %11680
  %11682 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %11683 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11682, ptr noundef nonnull align 8 dereferenceable(24) %748)
          to label %11684 unwind label %11753

11684:                                            ; preds = %11681
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %748) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %748) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %749) #5
  store i8 1, ptr %749, align 1, !tbaa !9
  %11685 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %11686 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11685, ptr noundef nonnull align 1 dereferenceable(1) %749)
          to label %11687 unwind label %11758

11687:                                            ; preds = %11684
  call void @llvm.lifetime.end.p0(i64 1, ptr %749) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11688 unwind label %1026

11688:                                            ; preds = %11687
  br label %11689

11689:                                            ; preds = %11697, %11688
  %11690 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %11691 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %11690)
          to label %11692 unwind label %1026

11692:                                            ; preds = %11689
  %11693 = load i8, ptr %11691, align 1, !tbaa !9, !range !11, !noundef !12
  %11694 = trunc i8 %11693 to i1
  %11695 = xor i1 %11694, true
  br i1 %11695, label %11696, label %11762

11696:                                            ; preds = %11692
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11697 unwind label %1026

11697:                                            ; preds = %11696
  br label %11689, !llvm.loop !152

11698:                                            ; preds = %11655
  %11699 = landingpad { ptr, i32 }
          cleanup
  %11700 = extractvalue { ptr, i32 } %11699, 0
  store ptr %11700, ptr %5, align 8
  %11701 = extractvalue { ptr, i32 } %11699, 1
  store i32 %11701, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %741) #5
  br label %12015

11702:                                            ; preds = %11659
  %11703 = landingpad { ptr, i32 }
          cleanup
  %11704 = extractvalue { ptr, i32 } %11703, 0
  store ptr %11704, ptr %5, align 8
  %11705 = extractvalue { ptr, i32 } %11703, 1
  store i32 %11705, ptr %6, align 4
  br label %11715

11706:                                            ; preds = %11662, %11660
  %11707 = landingpad { ptr, i32 }
          cleanup
  %11708 = extractvalue { ptr, i32 } %11707, 0
  store ptr %11708, ptr %5, align 8
  %11709 = extractvalue { ptr, i32 } %11707, 1
  store i32 %11709, ptr %6, align 4
  br label %11714

11710:                                            ; preds = %11663
  %11711 = landingpad { ptr, i32 }
          cleanup
  %11712 = extractvalue { ptr, i32 } %11711, 0
  store ptr %11712, ptr %5, align 8
  %11713 = extractvalue { ptr, i32 } %11711, 1
  store i32 %11713, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %742) #5
  br label %11714

11714:                                            ; preds = %11710, %11706
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %743) #5
  br label %11715

11715:                                            ; preds = %11714, %11702
  call void @llvm.lifetime.end.p0(i64 24, ptr %743) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %742) #5
  br label %12015

11716:                                            ; preds = %11666
  %11717 = landingpad { ptr, i32 }
          cleanup
  %11718 = extractvalue { ptr, i32 } %11717, 0
  store ptr %11718, ptr %5, align 8
  %11719 = extractvalue { ptr, i32 } %11717, 1
  store i32 %11719, ptr %6, align 4
  br label %11724

11720:                                            ; preds = %11667
  %11721 = landingpad { ptr, i32 }
          cleanup
  %11722 = extractvalue { ptr, i32 } %11721, 0
  store ptr %11722, ptr %5, align 8
  %11723 = extractvalue { ptr, i32 } %11721, 1
  store i32 %11723, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %744) #5
  br label %11724

11724:                                            ; preds = %11720, %11716
  call void @llvm.lifetime.end.p0(i64 24, ptr %744) #5
  br label %12015

11725:                                            ; preds = %11670
  %11726 = landingpad { ptr, i32 }
          cleanup
  %11727 = extractvalue { ptr, i32 } %11726, 0
  store ptr %11727, ptr %5, align 8
  %11728 = extractvalue { ptr, i32 } %11726, 1
  store i32 %11728, ptr %6, align 4
  br label %11748

11729:                                            ; preds = %11671
  %11730 = landingpad { ptr, i32 }
          cleanup
  %11731 = extractvalue { ptr, i32 } %11730, 0
  store ptr %11731, ptr %5, align 8
  %11732 = extractvalue { ptr, i32 } %11730, 1
  store i32 %11732, ptr %6, align 4
  br label %11747

11733:                                            ; preds = %11673
  %11734 = landingpad { ptr, i32 }
          cleanup
  %11735 = extractvalue { ptr, i32 } %11734, 0
  store ptr %11735, ptr %5, align 8
  %11736 = extractvalue { ptr, i32 } %11734, 1
  store i32 %11736, ptr %6, align 4
  br label %11746

11737:                                            ; preds = %11676, %11674
  %11738 = landingpad { ptr, i32 }
          cleanup
  %11739 = extractvalue { ptr, i32 } %11738, 0
  store ptr %11739, ptr %5, align 8
  %11740 = extractvalue { ptr, i32 } %11738, 1
  store i32 %11740, ptr %6, align 4
  br label %11745

11741:                                            ; preds = %11677
  %11742 = landingpad { ptr, i32 }
          cleanup
  %11743 = extractvalue { ptr, i32 } %11742, 0
  store ptr %11743, ptr %5, align 8
  %11744 = extractvalue { ptr, i32 } %11742, 1
  store i32 %11744, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %745) #5
  br label %11745

11745:                                            ; preds = %11741, %11737
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %747) #5
  br label %11746

11746:                                            ; preds = %11745, %11733
  call void @llvm.lifetime.end.p0(i64 24, ptr %747) #5
  br label %11747

11747:                                            ; preds = %11746, %11729
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %746) #5
  br label %11748

11748:                                            ; preds = %11747, %11725
  call void @llvm.lifetime.end.p0(i64 24, ptr %746) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %745) #5
  br label %12015

11749:                                            ; preds = %11680
  %11750 = landingpad { ptr, i32 }
          cleanup
  %11751 = extractvalue { ptr, i32 } %11750, 0
  store ptr %11751, ptr %5, align 8
  %11752 = extractvalue { ptr, i32 } %11750, 1
  store i32 %11752, ptr %6, align 4
  br label %11757

11753:                                            ; preds = %11681
  %11754 = landingpad { ptr, i32 }
          cleanup
  %11755 = extractvalue { ptr, i32 } %11754, 0
  store ptr %11755, ptr %5, align 8
  %11756 = extractvalue { ptr, i32 } %11754, 1
  store i32 %11756, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %748) #5
  br label %11757

11757:                                            ; preds = %11753, %11749
  call void @llvm.lifetime.end.p0(i64 24, ptr %748) #5
  br label %12015

11758:                                            ; preds = %11684
  %11759 = landingpad { ptr, i32 }
          cleanup
  %11760 = extractvalue { ptr, i32 } %11759, 0
  store ptr %11760, ptr %5, align 8
  %11761 = extractvalue { ptr, i32 } %11759, 1
  store i32 %11761, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %749) #5
  br label %12015

11762:                                            ; preds = %11692
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11763 unwind label %1026

11763:                                            ; preds = %11762
  call void @llvm.lifetime.start.p0(i64 1, ptr %750) #5
  store i8 0, ptr %750, align 1, !tbaa !9
  %11764 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %11765 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11764, ptr noundef nonnull align 1 dereferenceable(1) %750)
          to label %11766 unwind label %11796

11766:                                            ; preds = %11763
  call void @llvm.lifetime.end.p0(i64 1, ptr %750) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11767 unwind label %1026

11767:                                            ; preds = %11766
  call void @llvm.lifetime.start.p0(i64 24, ptr %751) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %751, i32 noundef 768)
          to label %11768 unwind label %11800

11768:                                            ; preds = %11767
  %11769 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %11770 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11769, ptr noundef nonnull align 8 dereferenceable(24) %751)
          to label %11771 unwind label %11804

11771:                                            ; preds = %11768
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %751) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %751) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %752) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %752, i32 noundef 0)
          to label %11772 unwind label %11809

11772:                                            ; preds = %11771
  %11773 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %11774 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11773, ptr noundef nonnull align 8 dereferenceable(24) %752)
          to label %11775 unwind label %11813

11775:                                            ; preds = %11772
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %752) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %752) #5
  %11776 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 22
  %11777 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11776, ptr noundef nonnull align 8 dereferenceable(24) %27)
          to label %11778 unwind label %1026

11778:                                            ; preds = %11775
  call void @llvm.lifetime.start.p0(i64 24, ptr %753) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %753, i32 noundef -2)
          to label %11779 unwind label %11818

11779:                                            ; preds = %11778
  %11780 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %11781 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11780, ptr noundef nonnull align 8 dereferenceable(24) %753)
          to label %11782 unwind label %11822

11782:                                            ; preds = %11779
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %753) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %753) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %754) #5
  store i8 1, ptr %754, align 1, !tbaa !9
  %11783 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %11784 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11783, ptr noundef nonnull align 1 dereferenceable(1) %754)
          to label %11785 unwind label %11827

11785:                                            ; preds = %11782
  call void @llvm.lifetime.end.p0(i64 1, ptr %754) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11786 unwind label %1026

11786:                                            ; preds = %11785
  br label %11787

11787:                                            ; preds = %11795, %11786
  %11788 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %11789 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %11788)
          to label %11790 unwind label %1026

11790:                                            ; preds = %11787
  %11791 = load i8, ptr %11789, align 1, !tbaa !9, !range !11, !noundef !12
  %11792 = trunc i8 %11791 to i1
  %11793 = xor i1 %11792, true
  br i1 %11793, label %11794, label %11831

11794:                                            ; preds = %11790
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11795 unwind label %1026

11795:                                            ; preds = %11794
  br label %11787, !llvm.loop !153

11796:                                            ; preds = %11763
  %11797 = landingpad { ptr, i32 }
          cleanup
  %11798 = extractvalue { ptr, i32 } %11797, 0
  store ptr %11798, ptr %5, align 8
  %11799 = extractvalue { ptr, i32 } %11797, 1
  store i32 %11799, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %750) #5
  br label %12015

11800:                                            ; preds = %11767
  %11801 = landingpad { ptr, i32 }
          cleanup
  %11802 = extractvalue { ptr, i32 } %11801, 0
  store ptr %11802, ptr %5, align 8
  %11803 = extractvalue { ptr, i32 } %11801, 1
  store i32 %11803, ptr %6, align 4
  br label %11808

11804:                                            ; preds = %11768
  %11805 = landingpad { ptr, i32 }
          cleanup
  %11806 = extractvalue { ptr, i32 } %11805, 0
  store ptr %11806, ptr %5, align 8
  %11807 = extractvalue { ptr, i32 } %11805, 1
  store i32 %11807, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %751) #5
  br label %11808

11808:                                            ; preds = %11804, %11800
  call void @llvm.lifetime.end.p0(i64 24, ptr %751) #5
  br label %12015

11809:                                            ; preds = %11771
  %11810 = landingpad { ptr, i32 }
          cleanup
  %11811 = extractvalue { ptr, i32 } %11810, 0
  store ptr %11811, ptr %5, align 8
  %11812 = extractvalue { ptr, i32 } %11810, 1
  store i32 %11812, ptr %6, align 4
  br label %11817

11813:                                            ; preds = %11772
  %11814 = landingpad { ptr, i32 }
          cleanup
  %11815 = extractvalue { ptr, i32 } %11814, 0
  store ptr %11815, ptr %5, align 8
  %11816 = extractvalue { ptr, i32 } %11814, 1
  store i32 %11816, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %752) #5
  br label %11817

11817:                                            ; preds = %11813, %11809
  call void @llvm.lifetime.end.p0(i64 24, ptr %752) #5
  br label %12015

11818:                                            ; preds = %11778
  %11819 = landingpad { ptr, i32 }
          cleanup
  %11820 = extractvalue { ptr, i32 } %11819, 0
  store ptr %11820, ptr %5, align 8
  %11821 = extractvalue { ptr, i32 } %11819, 1
  store i32 %11821, ptr %6, align 4
  br label %11826

11822:                                            ; preds = %11779
  %11823 = landingpad { ptr, i32 }
          cleanup
  %11824 = extractvalue { ptr, i32 } %11823, 0
  store ptr %11824, ptr %5, align 8
  %11825 = extractvalue { ptr, i32 } %11823, 1
  store i32 %11825, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %753) #5
  br label %11826

11826:                                            ; preds = %11822, %11818
  call void @llvm.lifetime.end.p0(i64 24, ptr %753) #5
  br label %12015

11827:                                            ; preds = %11782
  %11828 = landingpad { ptr, i32 }
          cleanup
  %11829 = extractvalue { ptr, i32 } %11828, 0
  store ptr %11829, ptr %5, align 8
  %11830 = extractvalue { ptr, i32 } %11828, 1
  store i32 %11830, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %754) #5
  br label %12015

11831:                                            ; preds = %11790
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11832 unwind label %1026

11832:                                            ; preds = %11831
  call void @llvm.lifetime.start.p0(i64 1, ptr %755) #5
  store i8 0, ptr %755, align 1, !tbaa !9
  %11833 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %11834 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11833, ptr noundef nonnull align 1 dereferenceable(1) %755)
          to label %11835 unwind label %11867

11835:                                            ; preds = %11832
  call void @llvm.lifetime.end.p0(i64 1, ptr %755) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11836 unwind label %1026

11836:                                            ; preds = %11835
  %11837 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 23
  %11838 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11837, ptr noundef nonnull align 8 dereferenceable(24) %12)
          to label %11839 unwind label %1026

11839:                                            ; preds = %11836
  call void @llvm.lifetime.start.p0(i64 24, ptr %756) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %757) #5
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %757, i32 noundef 0)
          to label %11840 unwind label %11871

11840:                                            ; preds = %11839
  %11841 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %757)
          to label %11842 unwind label %11875

11842:                                            ; preds = %11840
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %756, ptr noundef nonnull align 1 dereferenceable(1) %11841)
          to label %11843 unwind label %11875

11843:                                            ; preds = %11842
  %11844 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 24
  %11845 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11844, ptr noundef nonnull align 8 dereferenceable(24) %756)
          to label %11846 unwind label %11879

11846:                                            ; preds = %11843
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %756) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %757) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %757) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %756) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %758) #5
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %758, i32 noundef 1)
          to label %11847 unwind label %11885

11847:                                            ; preds = %11846
  %11848 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 20
  %11849 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11848, ptr noundef nonnull align 8 dereferenceable(24) %758)
          to label %11850 unwind label %11889

11850:                                            ; preds = %11847
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %758) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %758) #5
  %11851 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 19
  %11852 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11851, ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %11853 unwind label %1026

11853:                                            ; preds = %11850
  call void @llvm.lifetime.start.p0(i64 1, ptr %759) #5
  store i8 1, ptr %759, align 1, !tbaa !9
  %11854 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %11855 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11854, ptr noundef nonnull align 1 dereferenceable(1) %759)
          to label %11856 unwind label %11894

11856:                                            ; preds = %11853
  call void @llvm.lifetime.end.p0(i64 1, ptr %759) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11857 unwind label %1026

11857:                                            ; preds = %11856
  br label %11858

11858:                                            ; preds = %11866, %11857
  %11859 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 9
  %11860 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %11859)
          to label %11861 unwind label %1026

11861:                                            ; preds = %11858
  %11862 = load i8, ptr %11860, align 1, !tbaa !9, !range !11, !noundef !12
  %11863 = trunc i8 %11862 to i1
  %11864 = xor i1 %11863, true
  br i1 %11864, label %11865, label %11898

11865:                                            ; preds = %11861
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11866 unwind label %1026

11866:                                            ; preds = %11865
  br label %11858, !llvm.loop !154

11867:                                            ; preds = %11832
  %11868 = landingpad { ptr, i32 }
          cleanup
  %11869 = extractvalue { ptr, i32 } %11868, 0
  store ptr %11869, ptr %5, align 8
  %11870 = extractvalue { ptr, i32 } %11868, 1
  store i32 %11870, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %755) #5
  br label %12015

11871:                                            ; preds = %11839
  %11872 = landingpad { ptr, i32 }
          cleanup
  %11873 = extractvalue { ptr, i32 } %11872, 0
  store ptr %11873, ptr %5, align 8
  %11874 = extractvalue { ptr, i32 } %11872, 1
  store i32 %11874, ptr %6, align 4
  br label %11884

11875:                                            ; preds = %11842, %11840
  %11876 = landingpad { ptr, i32 }
          cleanup
  %11877 = extractvalue { ptr, i32 } %11876, 0
  store ptr %11877, ptr %5, align 8
  %11878 = extractvalue { ptr, i32 } %11876, 1
  store i32 %11878, ptr %6, align 4
  br label %11883

11879:                                            ; preds = %11843
  %11880 = landingpad { ptr, i32 }
          cleanup
  %11881 = extractvalue { ptr, i32 } %11880, 0
  store ptr %11881, ptr %5, align 8
  %11882 = extractvalue { ptr, i32 } %11880, 1
  store i32 %11882, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %756) #5
  br label %11883

11883:                                            ; preds = %11879, %11875
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %757) #5
  br label %11884

11884:                                            ; preds = %11883, %11871
  call void @llvm.lifetime.end.p0(i64 24, ptr %757) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %756) #5
  br label %12015

11885:                                            ; preds = %11846
  %11886 = landingpad { ptr, i32 }
          cleanup
  %11887 = extractvalue { ptr, i32 } %11886, 0
  store ptr %11887, ptr %5, align 8
  %11888 = extractvalue { ptr, i32 } %11886, 1
  store i32 %11888, ptr %6, align 4
  br label %11893

11889:                                            ; preds = %11847
  %11890 = landingpad { ptr, i32 }
          cleanup
  %11891 = extractvalue { ptr, i32 } %11890, 0
  store ptr %11891, ptr %5, align 8
  %11892 = extractvalue { ptr, i32 } %11890, 1
  store i32 %11892, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %758) #5
  br label %11893

11893:                                            ; preds = %11889, %11885
  call void @llvm.lifetime.end.p0(i64 24, ptr %758) #5
  br label %12015

11894:                                            ; preds = %11853
  %11895 = landingpad { ptr, i32 }
          cleanup
  %11896 = extractvalue { ptr, i32 } %11895, 0
  store ptr %11896, ptr %5, align 8
  %11897 = extractvalue { ptr, i32 } %11895, 1
  store i32 %11897, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %759) #5
  br label %12015

11898:                                            ; preds = %11861
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11899 unwind label %1026

11899:                                            ; preds = %11898
  call void @llvm.lifetime.start.p0(i64 1, ptr %760) #5
  store i8 0, ptr %760, align 1, !tbaa !9
  %11900 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 21
  %11901 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11900, ptr noundef nonnull align 1 dereferenceable(1) %760)
          to label %11902 unwind label %11904

11902:                                            ; preds = %11899
  call void @llvm.lifetime.end.p0(i64 1, ptr %760) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11903 unwind label %1026

11903:                                            ; preds = %11902
  br label %11908

11904:                                            ; preds = %11899
  %11905 = landingpad { ptr, i32 }
          cleanup
  %11906 = extractvalue { ptr, i32 } %11905, 0
  store ptr %11906, ptr %5, align 8
  %11907 = extractvalue { ptr, i32 } %11905, 1
  store i32 %11907, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %760) #5
  br label %12015

11908:                                            ; preds = %11903, %11103
  br label %11913

11909:                                            ; preds = %2780
  %11910 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %33, i32 noundef 3)
          to label %11911 unwind label %1026

11911:                                            ; preds = %11909
  store i8 1, ptr %34, align 1, !tbaa !9
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11912 unwind label %1026

11912:                                            ; preds = %11911
  br label %11913

11913:                                            ; preds = %11912, %11908, %11091, %9266, %7754, %5672, %3958, %3566, %3549, %3530, %3295
  br label %11914

11914:                                            ; preds = %11913
  br label %11915

11915:                                            ; preds = %11914, %2533
  br label %11916

11916:                                            ; preds = %11915, %2627
  %11917 = invoke noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %33)
          to label %11918 unwind label %1026

11918:                                            ; preds = %11916
  %11919 = icmp ne i64 %11917, 0
  br i1 %11919, label %11920, label %11927

11920:                                            ; preds = %11918
  %11921 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %39, ptr noundef nonnull align 8 dereferenceable(24) %33)
          to label %11922 unwind label %1026

11922:                                            ; preds = %11920
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11923 unwind label %1026

11923:                                            ; preds = %11922
  %11924 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %39, i32 noundef 0)
          to label %11925 unwind label %1026

11925:                                            ; preds = %11923
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11926 unwind label %1026

11926:                                            ; preds = %11925
  br label %11929

11927:                                            ; preds = %11918
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11928 unwind label %1026

11928:                                            ; preds = %11927
  br label %11929

11929:                                            ; preds = %11928, %11926
  %11930 = load i8, ptr %34, align 1, !tbaa !9, !range !11, !noundef !12
  %11931 = trunc i8 %11930 to i1
  %11932 = zext i1 %11931 to i32
  %11933 = icmp ne i32 %11932, 0
  br i1 %11933, label %11934, label %12012

11934:                                            ; preds = %11929
  call void @llvm.lifetime.start.p0(i64 24, ptr %761) #5
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %761, i32 noundef 0)
          to label %11935 unwind label %11969

11935:                                            ; preds = %11934
  %11936 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %761, ptr noundef nonnull align 8 dereferenceable(8) %27)
          to label %11937 unwind label %11973

11937:                                            ; preds = %11935
  call void @llvm.lifetime.start.p0(i64 24, ptr %762) #5
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %762, i32 noundef 0)
          to label %11938 unwind label %11977

11938:                                            ; preds = %11937
  %11939 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %11936, ptr noundef nonnull align 8 dereferenceable(8) %762)
          to label %11940 unwind label %11981

11940:                                            ; preds = %11938
  %11941 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 1 dereferenceable(1) %11939)
          to label %11942 unwind label %11981

11942:                                            ; preds = %11940
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %762) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %762) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %761) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %761) #5
  call void @llvm.lifetime.start.p0(i64 24, ptr %763) #5
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %763, i32 noundef -8192)
          to label %11943 unwind label %11988

11943:                                            ; preds = %11942
  %11944 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 14
  %11945 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11944, ptr noundef nonnull align 8 dereferenceable(24) %763)
          to label %11946 unwind label %11992

11946:                                            ; preds = %11943
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %763) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %763) #5
  %11947 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 15
  %11948 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %11947, ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %11949 unwind label %1026

11949:                                            ; preds = %11946
  call void @llvm.lifetime.start.p0(i64 1, ptr %764) #5
  store i8 0, ptr %764, align 1, !tbaa !9
  %11950 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 16
  %11951 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11950, ptr noundef nonnull align 1 dereferenceable(1) %764)
          to label %11952 unwind label %11997

11952:                                            ; preds = %11949
  call void @llvm.lifetime.end.p0(i64 1, ptr %764) #5
  call void @llvm.lifetime.start.p0(i64 1, ptr %765) #5
  store i8 1, ptr %765, align 1, !tbaa !9
  %11953 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %11954 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11953, ptr noundef nonnull align 1 dereferenceable(1) %765)
          to label %11955 unwind label %12001

11955:                                            ; preds = %11952
  call void @llvm.lifetime.end.p0(i64 1, ptr %765) #5
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11956 unwind label %1026

11956:                                            ; preds = %11955
  br label %11957

11957:                                            ; preds = %12010, %11956
  br label %11958

11958:                                            ; preds = %11957
  call void @llvm.lifetime.start.p0(i64 1, ptr %766) #5
  store i8 0, ptr %766, align 1, !tbaa !9
  %11959 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 13
  %11960 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %11959, ptr noundef nonnull align 1 dereferenceable(1) %766)
          to label %11961 unwind label %12005

11961:                                            ; preds = %11958
  call void @llvm.lifetime.end.p0(i64 1, ptr %766) #5
  %11962 = getelementptr inbounds %struct.EXC_CTRL, ptr %767, i32 0, i32 3
  %11963 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %11962)
          to label %11964 unwind label %1026

11964:                                            ; preds = %11961
  %11965 = load i8, ptr %11963, align 1, !tbaa !9, !range !11, !noundef !12
  %11966 = trunc i8 %11965 to i1
  br i1 %11966, label %11967, label %12009

11967:                                            ; preds = %11964
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %11968 unwind label %1026

11968:                                            ; preds = %11967
  br label %12011

11969:                                            ; preds = %11934
  %11970 = landingpad { ptr, i32 }
          cleanup
  %11971 = extractvalue { ptr, i32 } %11970, 0
  store ptr %11971, ptr %5, align 8
  %11972 = extractvalue { ptr, i32 } %11970, 1
  store i32 %11972, ptr %6, align 4
  br label %11987

11973:                                            ; preds = %11935
  %11974 = landingpad { ptr, i32 }
          cleanup
  %11975 = extractvalue { ptr, i32 } %11974, 0
  store ptr %11975, ptr %5, align 8
  %11976 = extractvalue { ptr, i32 } %11974, 1
  store i32 %11976, ptr %6, align 4
  br label %11986

11977:                                            ; preds = %11937
  %11978 = landingpad { ptr, i32 }
          cleanup
  %11979 = extractvalue { ptr, i32 } %11978, 0
  store ptr %11979, ptr %5, align 8
  %11980 = extractvalue { ptr, i32 } %11978, 1
  store i32 %11980, ptr %6, align 4
  br label %11985

11981:                                            ; preds = %11940, %11938
  %11982 = landingpad { ptr, i32 }
          cleanup
  %11983 = extractvalue { ptr, i32 } %11982, 0
  store ptr %11983, ptr %5, align 8
  %11984 = extractvalue { ptr, i32 } %11982, 1
  store i32 %11984, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %762) #5
  br label %11985

11985:                                            ; preds = %11981, %11977
  call void @llvm.lifetime.end.p0(i64 24, ptr %762) #5
  br label %11986

11986:                                            ; preds = %11985, %11973
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %761) #5
  br label %11987

11987:                                            ; preds = %11986, %11969
  call void @llvm.lifetime.end.p0(i64 24, ptr %761) #5
  br label %12015

11988:                                            ; preds = %11942
  %11989 = landingpad { ptr, i32 }
          cleanup
  %11990 = extractvalue { ptr, i32 } %11989, 0
  store ptr %11990, ptr %5, align 8
  %11991 = extractvalue { ptr, i32 } %11989, 1
  store i32 %11991, ptr %6, align 4
  br label %11996

11992:                                            ; preds = %11943
  %11993 = landingpad { ptr, i32 }
          cleanup
  %11994 = extractvalue { ptr, i32 } %11993, 0
  store ptr %11994, ptr %5, align 8
  %11995 = extractvalue { ptr, i32 } %11993, 1
  store i32 %11995, ptr %6, align 4
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %763) #5
  br label %11996

11996:                                            ; preds = %11992, %11988
  call void @llvm.lifetime.end.p0(i64 24, ptr %763) #5
  br label %12015

11997:                                            ; preds = %11949
  %11998 = landingpad { ptr, i32 }
          cleanup
  %11999 = extractvalue { ptr, i32 } %11998, 0
  store ptr %11999, ptr %5, align 8
  %12000 = extractvalue { ptr, i32 } %11998, 1
  store i32 %12000, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %764) #5
  br label %12015

12001:                                            ; preds = %11952
  %12002 = landingpad { ptr, i32 }
          cleanup
  %12003 = extractvalue { ptr, i32 } %12002, 0
  store ptr %12003, ptr %5, align 8
  %12004 = extractvalue { ptr, i32 } %12002, 1
  store i32 %12004, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %765) #5
  br label %12015

12005:                                            ; preds = %11958
  %12006 = landingpad { ptr, i32 }
          cleanup
  %12007 = extractvalue { ptr, i32 } %12006, 0
  store ptr %12007, ptr %5, align 8
  %12008 = extractvalue { ptr, i32 } %12006, 1
  store i32 %12008, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 1, ptr %766) #5
  br label %12015

12009:                                            ; preds = %11964
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %12010 unwind label %1026

12010:                                            ; preds = %12009
  br label %11957, !llvm.loop !155

12011:                                            ; preds = %11968
  br label %12014

12012:                                            ; preds = %11929
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %767)
          to label %12013 unwind label %1026

12013:                                            ; preds = %12012
  br label %12014

12014:                                            ; preds = %12013, %12011
  br label %2372, !llvm.loop !156

12015:                                            ; preds = %12005, %12001, %11997, %11996, %11987, %11904, %11894, %11893, %11884, %11867, %11827, %11826, %11817, %11808, %11796, %11758, %11757, %11748, %11724, %11715, %11698, %11650, %11649, %11640, %11631, %11622, %11610, %11562, %11561, %11552, %11543, %11531, %11484, %11483, %11453, %11437, %11428, %11411, %11379, %11378, %11369, %11352, %11312, %11311, %11302, %11293, %11276, %11232, %11231, %11222, %11188, %11162, %11153, %11087, %11077, %11076, %11067, %11048, %11036, %10993, %10992, %10983, %10974, %10965, %10953, %10905, %10904, %10895, %10886, %10877, %10865, %10817, %10816, %10807, %10798, %10784, %10772, %10725, %10724, %10715, %10701, %10689, %10648, %10647, %10638, %10629, %10615, %10603, %10558, %10557, %10548, %10539, %10525, %10475, %10471, %10467, %10466, %10454, %10412, %10411, %10402, %10388, %10371, %10327, %10326, %10317, %10308, %10294, %10235, %10231, %10227, %10226, %10214, %10171, %10170, %10161, %10147, %10135, %10094, %10093, %10084, %10075, %10063, %10022, %10021, %10012, %10003, %9991, %9950, %9949, %9919, %9910, %9901, %9875, %9866, %9857, %9848, %9834, %9822, %9779, %9778, %9769, %9755, %9743, %9702, %9701, %9692, %9683, %9669, %9657, %9612, %9611, %9602, %9593, %9579, %9529, %9525, %9521, %9520, %9508, %9466, %9465, %9456, %9442, %9425, %9381, %9380, %9371, %9362, %9348, %9250, %9246, %9242, %9202, %9198, %9194, %9149, %9145, %9141, %9098, %9074, %9070, %9066, %9065, %9056, %8997, %8993, %8989, %8988, %8943, %8906, %8902, %8898, %8862, %8858, %8854, %8820, %8788, %8784, %8780, %8779, %8728, %8718, %8717, %8708, %8699, %8690, %8628, %8618, %8617, %8608, %8565, %8530, %8520, %8519, %8489, %8475, %8455, %8441, %8432, %8372, %8362, %8361, %8331, %8317, %8308, %8299, %8251, %8241, %8240, %8210, %8196, %8187, %8178, %8130, %8120, %8119, %8110, %8101, %8047, %8043, %8039, %8007, %7975, %7971, %7967, %7966, %7886, %7882, %7878, %7877, %7823, %7819, %7815, %7814, %7747, %7737, %7736, %7727, %7710, %7670, %7669, %7660, %7646, %7629, %7585, %7584, %7575, %7561, %7547, %7477, %7473, %7469, %7468, %7415, %7411, %7407, %7406, %7352, %7348, %7344, %7297, %7261, %7257, %7253, %7252, %7243, %7171, %7167, %7163, %7162, %7116, %7102, %7101, %7009, %7005, %7001, %7000, %6991, %6932, %6928, %6924, %6923, %6870, %6866, %6862, %6858, %6819, %6818, %6809, %6800, %6735, %6725, %6724, %6715, %6706, %6692, %6642, %6632, %6631, %6622, %6613, %6567, %6553, %6529, %6519, %6518, %6509, %6467, %6453, %6434, %6418, %6393, %6383, %6382, %6373, %6364, %6318, %6304, %6280, %6270, %6269, %6260, %6251, %6205, %6191, %6167, %6157, %6156, %6147, %6138, %6092, %6078, %6051, %6047, %6043, %6042, %6033, %5974, %5970, %5966, %5965, %5917, %5913, %5909, %5908, %5860, %5856, %5852, %5851, %5776, %5772, %5768, %5767, %5668, %5658, %5657, %5648, %5631, %5591, %5590, %5581, %5572, %5558, %5500, %5496, %5492, %5491, %5482, %5432, %5428, %5424, %5423, %5348, %5344, %5340, %5339, %5288, %5284, %5280, %5279, %5229, %5225, %5221, %5220, %5164, %5160, %5156, %5155, %5084, %5074, %5073, %5064, %5014, %5010, %5006, %5005, %4958, %4954, %4950, %4911, %4907, %4903, %4873, %4846, %4842, %4838, %4837, %4787, %4783, %4779, %4778, %4766, %4718, %4717, %4708, %4699, %4687, %4649, %4648, %4639, %4615, %4606, %4548, %4544, %4540, %4500, %4496, %4492, %4456, %4452, %4448, %4447, %4396, %4392, %4388, %4351, %4347, %4343, %4342, %4291, %4287, %4283, %4246, %4242, %4238, %4237, %4177, %4173, %4169, %4168, %4123, %4114, %4084, %4075, %4030, %4026, %4022, %4021, %3954, %3944, %3943, %3934, %3884, %3880, %3876, %3875, %3828, %3824, %3820, %3819, %3807, %3765, %3764, %3755, %3746, %3734, %3696, %3695, %3686, %3662, %3653, %3523, %3519, %3515, %3476, %3472, %3468, %3432, %3428, %3424, %3423, %3364, %3360, %3356, %3355, %3291, %3281, %3280, %3271, %3252, %3240, %3197, %3196, %3187, %3163, %3066, %3062, %3058, %3057, %3045, %3002, %3001, %2992, %2978, %2966, %2925, %2924, %2915, %2891, %2752, %2748, %2744, %2743, %2731, %2727, %2651, %2647, %2646, %2589, %2585, %2581, %2580, %2510, %2506, %2502, %2498, %2494, %2490, %2424, %2423, %2414, %2363, %2359, %2355, %2324, %2242, %2238, %2234, %2233, %2137, %2133, %2129, %2090, %2086, %2082, %2041, %2031, %2030, %2021, %2009, %1978, %1977, %1968, %1959, %1947, %1912, %1911, %1902, %1890, %1859, %1858, %1849, %1840, %1831, %1787, %1783, %1779, %1775, %1736, %1735, %1726, %1690, %1686, %1682, %1678, %1639, %1638, %1629, %1620, %1585, %1567, %1555, %1528, %1527, %1518, %1509, %1500, %1456, %1452, %1448, %1447, %1438, %1426, %1387, %1386, %1377, %1341, %1337, %1333, %1332, %1323, %1311, %1272, %1271, %1262, %1253, %1244, %1200, %1196, %1192, %1156, %1152, %1148, %1098, %1094, %1090, %1054, %1050, %1046, %1042, %1038, %1034, %1030, %1026
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %39) #5
  br label %12016

12016:                                            ; preds = %12015, %1022
  call void @llvm.lifetime.end.p0(i64 24, ptr %39) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %38) #5
  br label %12017

12017:                                            ; preds = %12016, %1018
  call void @llvm.lifetime.end.p0(i64 24, ptr %38) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %37) #5
  br label %12018

12018:                                            ; preds = %12017, %1014
  call void @llvm.lifetime.end.p0(i64 24, ptr %37) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %36) #5
  br label %12019

12019:                                            ; preds = %12018, %1010
  call void @llvm.lifetime.end.p0(i64 24, ptr %36) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %35) #5
  br label %12020

12020:                                            ; preds = %12019, %1006
  call void @llvm.lifetime.end.p0(i64 24, ptr %35) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %34) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %33) #5
  br label %12021

12021:                                            ; preds = %12020, %1002
  call void @llvm.lifetime.end.p0(i64 24, ptr %33) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %32) #5
  br label %12022

12022:                                            ; preds = %12021, %998
  call void @llvm.lifetime.end.p0(i64 24, ptr %32) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %31) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %30) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %29) #5
  br label %12023

12023:                                            ; preds = %12022, %994
  call void @llvm.lifetime.end.p0(i64 24, ptr %29) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %28) #5
  br label %12024

12024:                                            ; preds = %12023, %990
  call void @llvm.lifetime.end.p0(i64 24, ptr %28) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %27) #5
  br label %12025

12025:                                            ; preds = %12024, %986
  call void @llvm.lifetime.end.p0(i64 24, ptr %27) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %26) #5
  br label %12026

12026:                                            ; preds = %12025, %982
  call void @llvm.lifetime.end.p0(i64 24, ptr %26) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %25) #5
  br label %12027

12027:                                            ; preds = %12026, %978
  call void @llvm.lifetime.end.p0(i64 24, ptr %25) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %24) #5
  br label %12028

12028:                                            ; preds = %12027, %974
  call void @llvm.lifetime.end.p0(i64 24, ptr %24) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %23) #5
  br label %12029

12029:                                            ; preds = %12028, %970
  call void @llvm.lifetime.end.p0(i64 24, ptr %23) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %22) #5
  br label %12030

12030:                                            ; preds = %12029, %966
  call void @llvm.lifetime.end.p0(i64 24, ptr %22) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %21) #5
  br label %12031

12031:                                            ; preds = %12030, %962
  call void @llvm.lifetime.end.p0(i64 24, ptr %21) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %20) #5
  br label %12032

12032:                                            ; preds = %12031, %958
  call void @llvm.lifetime.end.p0(i64 24, ptr %20) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %19) #5
  br label %12033

12033:                                            ; preds = %12032, %954
  call void @llvm.lifetime.end.p0(i64 24, ptr %19) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %18) #5
  br label %12034

12034:                                            ; preds = %12033, %950
  call void @llvm.lifetime.end.p0(i64 24, ptr %18) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %17) #5
  br label %12035

12035:                                            ; preds = %12034, %946
  call void @llvm.lifetime.end.p0(i64 24, ptr %17) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %16) #5
  br label %12036

12036:                                            ; preds = %12035, %942
  call void @llvm.lifetime.end.p0(i64 24, ptr %16) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %15) #5
  br label %12037

12037:                                            ; preds = %12036, %938
  call void @llvm.lifetime.end.p0(i64 24, ptr %15) #5
  call void @llvm.lifetime.end.p0(i64 1, ptr %14) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %13) #5
  br label %12038

12038:                                            ; preds = %12037, %934
  call void @llvm.lifetime.end.p0(i64 24, ptr %13) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %12) #5
  br label %12039

12039:                                            ; preds = %12038, %930
  call void @llvm.lifetime.end.p0(i64 24, ptr %12) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %11) #5
  br label %12040

12040:                                            ; preds = %12039, %926
  call void @llvm.lifetime.end.p0(i64 24, ptr %11) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %10) #5
  br label %12041

12041:                                            ; preds = %12040, %922
  call void @llvm.lifetime.end.p0(i64 24, ptr %10) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %9) #5
  br label %12042

12042:                                            ; preds = %12041, %918
  call void @llvm.lifetime.end.p0(i64 24, ptr %9) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %8) #5
  br label %12043

12043:                                            ; preds = %12042, %914
  call void @llvm.lifetime.end.p0(i64 24, ptr %8) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %7) #5
  br label %12044

12044:                                            ; preds = %12043, %910
  call void @llvm.lifetime.end.p0(i64 24, ptr %7) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %4) #5
  br label %12045

12045:                                            ; preds = %12044, %906
  call void @llvm.lifetime.end.p0(i64 24, ptr %4) #5
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %3) #5
  call void @llvm.lifetime.end.p0(i64 24, ptr %3) #5
  br label %12046

12046:                                            ; preds = %12045
  %12047 = load ptr, ptr %5, align 8
  %12048 = load i32, ptr %6, align 4
  %12049 = insertvalue { ptr, i32 } poison, ptr %12047, 0
  %12050 = insertvalue { ptr, i32 } %12049, i32 %12048, 1
  resume { ptr, i32 } %12050
}

; Function Attrs: nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.start.p0(i64 immarg, ptr nocapture) #1

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi16EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #0 align 2

declare i32 @__gxx_personality_v0(...)

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi8EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi14EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi5EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi6EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi12EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi7EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi2EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi4EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi3EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi32EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi4EEaSEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192), ptr noundef nonnull align 1 dereferenceable(1)) #0 align 2

; Function Attrs: nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.end.p0(i64 immarg, ptr nocapture) #1

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232)) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184)) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176), ptr noundef nonnull align 8 dereferenceable(24)) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176), ptr noundef nonnull align 8 dereferenceable(24)) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176), ptr noundef nonnull align 8 dereferenceable(24)) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176), ptr noundef nonnull align 8 dereferenceable(24)) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi16EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) unnamed_addr #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) #0 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef, i32 noundef) #3 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef i64 @_ZNK5sc_dt15sc_int_subref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(28)) #4 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8)) #3

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 1 dereferenceable(1)) #0 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) #3 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24)) #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEx(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184)) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176), ptr noundef nonnull align 8 dereferenceable(24)) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi14EEEEcvRKS3_Ev(ptr noundef nonnull align 8 dereferenceable(168)) #0 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt13sc_int_subrefaSERKNS_11sc_int_baseE(ptr noundef nonnull align 8 dereferenceable(28), ptr noundef nonnull align 8 dereferenceable(24)) #3 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(28)) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168)) #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(28)) #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEx(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 1 dereferenceable(1)) #0 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dtorEyRKNS_12sc_concatrefE(ptr dead_on_unwind noalias writable sret(%"class.sc_dt::sc_unsigned") align 8, i64 noundef, ptr noundef nonnull align 8 dereferenceable(36)) #3

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168)) #0 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZNK5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) #3 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi4EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSERKNS_11sc_unsignedE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32)) #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN5sc_dt11sc_unsignedD2Ev(ptr noundef nonnull align 8 dereferenceable(32)) unnamed_addr #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(28)) #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) #2 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24)) #4 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi32EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(28)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi4EEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEx(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEx(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi7EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 1 dereferenceable(1)) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi9EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi32EEaSEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi6EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) unnamed_addr #0 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8)) #3

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(28)) #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSEx(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(28)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi7EEC2ERKNS_11sc_int_baseE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi10EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi2EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168)) #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(28)) #2 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZN5sc_dtgtERKNS_11sc_int_baseES2_(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) #4

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEx(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi2EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) unnamed_addr #0 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseEb(ptr noundef nonnull align 8 dereferenceable(8), i1 noundef zeroext) #3

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef zeroext i1 @_ZN5sc_dtleERKNS_11sc_int_baseERKNS_12sc_concatrefE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(36)) #3

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt13sc_int_subrefaSERKS0_(ptr noundef nonnull align 8 dereferenceable(28), ptr noundef nonnull align 8 dereferenceable(28)) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi7EEC2ERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(28)) unnamed_addr #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(8)) unnamed_addr #2 align 2

attributes #0 = { mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #1 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #2 = { mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { inlinehint mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #4 = { inlinehint mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #5 = { nounwind }

!llvm.module.flags = !{!0, !1, !2, !3}
!llvm.ident = !{!4}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"any pointer", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!10, !10, i64 0}
!10 = !{!"bool", !7, i64 0}
!11 = !{i8 0, i8 2}
!12 = !{}
!13 = distinct !{!13, !14}
!14 = !{!"llvm.loop.mustprogress"}
!15 = distinct !{!15, !14}
!16 = distinct !{!16, !14}
!17 = distinct !{!17, !14}
!18 = distinct !{!18, !14}
!19 = distinct !{!19, !14}
!20 = distinct !{!20, !14}
!21 = distinct !{!21, !14}
!22 = distinct !{!22, !14}
!23 = distinct !{!23, !14}
!24 = distinct !{!24, !14}
!25 = distinct !{!25, !14}
!26 = distinct !{!26, !14}
!27 = distinct !{!27, !14}
!28 = distinct !{!28, !14}
!29 = distinct !{!29, !14}
!30 = distinct !{!30, !14}
!31 = distinct !{!31, !14}
!32 = distinct !{!32, !14}
!33 = distinct !{!33, !14}
!34 = distinct !{!34, !14}
!35 = distinct !{!35, !14}
!36 = distinct !{!36, !14}
!37 = distinct !{!37, !14}
!38 = distinct !{!38, !14}
!39 = distinct !{!39, !14}
!40 = distinct !{!40, !14}
!41 = distinct !{!41, !14}
!42 = distinct !{!42, !14}
!43 = distinct !{!43, !14}
!44 = distinct !{!44, !14}
!45 = distinct !{!45, !14}
!46 = distinct !{!46, !14}
!47 = distinct !{!47, !14}
!48 = distinct !{!48, !14}
!49 = distinct !{!49, !14}
!50 = distinct !{!50, !14}
!51 = distinct !{!51, !14}
!52 = distinct !{!52, !14}
!53 = distinct !{!53, !14}
!54 = distinct !{!54, !14}
!55 = distinct !{!55, !14}
!56 = distinct !{!56, !14}
!57 = distinct !{!57, !14}
!58 = distinct !{!58, !14}
!59 = distinct !{!59, !14}
!60 = distinct !{!60, !14}
!61 = distinct !{!61, !14}
!62 = distinct !{!62, !14}
!63 = distinct !{!63, !14}
!64 = distinct !{!64, !14}
!65 = distinct !{!65, !14}
!66 = distinct !{!66, !14}
!67 = distinct !{!67, !14}
!68 = distinct !{!68, !14}
!69 = distinct !{!69, !14}
!70 = distinct !{!70, !14}
!71 = distinct !{!71, !14}
!72 = distinct !{!72, !14}
!73 = distinct !{!73, !14}
!74 = distinct !{!74, !14}
!75 = distinct !{!75, !14}
!76 = distinct !{!76, !14}
!77 = distinct !{!77, !14}
!78 = distinct !{!78, !14}
!79 = distinct !{!79, !14}
!80 = distinct !{!80, !14}
!81 = distinct !{!81, !14}
!82 = distinct !{!82, !14}
!83 = distinct !{!83, !14}
!84 = distinct !{!84, !14}
!85 = distinct !{!85, !14}
!86 = distinct !{!86, !14}
!87 = distinct !{!87, !14}
!88 = distinct !{!88, !14}
!89 = distinct !{!89, !14}
!90 = distinct !{!90, !14}
!91 = distinct !{!91, !14}
!92 = distinct !{!92, !14}
!93 = distinct !{!93, !14}
!94 = distinct !{!94, !14}
!95 = distinct !{!95, !14}
!96 = distinct !{!96, !14}
!97 = distinct !{!97, !14}
!98 = distinct !{!98, !14}
!99 = distinct !{!99, !14}
!100 = distinct !{!100, !14}
!101 = distinct !{!101, !14}
!102 = distinct !{!102, !14}
!103 = distinct !{!103, !14}
!104 = distinct !{!104, !14}
!105 = distinct !{!105, !14}
!106 = distinct !{!106, !14}
!107 = distinct !{!107, !14}
!108 = distinct !{!108, !14}
!109 = distinct !{!109, !14}
!110 = distinct !{!110, !14}
!111 = distinct !{!111, !14}
!112 = distinct !{!112, !14}
!113 = distinct !{!113, !14}
!114 = distinct !{!114, !14}
!115 = distinct !{!115, !14}
!116 = distinct !{!116, !14}
!117 = distinct !{!117, !14}
!118 = distinct !{!118, !14}
!119 = distinct !{!119, !14}
!120 = distinct !{!120, !14}
!121 = distinct !{!121, !14}
!122 = distinct !{!122, !14}
!123 = distinct !{!123, !14}
!124 = distinct !{!124, !14}
!125 = distinct !{!125, !14}
!126 = distinct !{!126, !14}
!127 = distinct !{!127, !14}
!128 = distinct !{!128, !14}
!129 = distinct !{!129, !14}
!130 = distinct !{!130, !14}
!131 = distinct !{!131, !14}
!132 = distinct !{!132, !14}
!133 = distinct !{!133, !14}
!134 = distinct !{!134, !14}
!135 = distinct !{!135, !14}
!136 = distinct !{!136, !14}
!137 = distinct !{!137, !14}
!138 = distinct !{!138, !14}
!139 = distinct !{!139, !14}
!140 = distinct !{!140, !14}
!141 = distinct !{!141, !14}
!142 = distinct !{!142, !14}
!143 = distinct !{!143, !14}
!144 = distinct !{!144, !14}
!145 = distinct !{!145, !14}
!146 = distinct !{!146, !14}
!147 = distinct !{!147, !14}
!148 = distinct !{!148, !14}
!149 = distinct !{!149, !14}
!150 = distinct !{!150, !14}
!151 = distinct !{!151, !14}
!152 = distinct !{!152, !14}
!153 = distinct !{!153, !14}
!154 = distinct !{!154, !14}
!155 = distinct !{!155, !14}
!156 = distinct !{!156, !14}


; Optimized IR (opt -passes='default<O3>'):
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

%"class.sc_dt::sc_int" = type { %"class.sc_dt::sc_int_base" }
%"class.sc_dt::sc_int_base" = type { %"class.sc_dt::sc_value_base", i64, i32, i32 }
%"class.sc_dt::sc_value_base" = type { ptr }
%"class.sc_dt::sc_int.0" = type { %"class.sc_dt::sc_int_base" }
%"class.sc_dt::sc_int.1" = type { %"class.sc_dt::sc_int_base" }
%"class.sc_dt::sc_int.2" = type { %"class.sc_dt::sc_int_base" }
%"class.sc_dt::sc_int.3" = type { %"class.sc_dt::sc_int_base" }
%"class.sc_dt::sc_int.4" = type { %"class.sc_dt::sc_int_base" }
%"class.sc_dt::sc_int.5" = type { %"class.sc_dt::sc_int_base" }
%"class.sc_dt::sc_int.6" = type { %"class.sc_dt::sc_int_base" }
%"class.sc_dt::sc_int.7" = type { %"class.sc_dt::sc_int_base" }
%"class.sc_dt::sc_int.8" = type { %"class.sc_dt::sc_int_base" }
%"class.sc_dt::sc_int.9" = type { %"class.sc_dt::sc_int_base" }
%"class.sc_dt::sc_int.107" = type { %"class.sc_dt::sc_int_base" }
%"class.sc_dt::sc_unsigned" = type { %"class.sc_dt::sc_value_base", i32, i32, i32, ptr }
%"class.sc_dt::sc_int.108" = type { %"class.sc_dt::sc_int_base" }
%"class.sc_dt::sc_int.109" = type { %"class.sc_dt::sc_int_base" }

; Function Attrs: mustprogress noreturn uwtable
define dso_local void @_ZN8EXC_CTRL12start_alwaysEv(ptr noundef nonnull align 8 dereferenceable(4728) %0) local_unnamed_addr #0 align 2 personality ptr @__gxx_personality_v0 {
  %2 = alloca %"class.sc_dt::sc_int", align 8
  %3 = alloca %"class.sc_dt::sc_int", align 8
  %4 = alloca %"class.sc_dt::sc_int.0", align 8
  %5 = alloca %"class.sc_dt::sc_int.1", align 8
  %6 = alloca %"class.sc_dt::sc_int.1", align 8
  %7 = alloca %"class.sc_dt::sc_int.1", align 8
  %8 = alloca %"class.sc_dt::sc_int.1", align 8
  %9 = alloca %"class.sc_dt::sc_int.1", align 8
  %10 = alloca %"class.sc_dt::sc_int.0", align 8
  %11 = alloca %"class.sc_dt::sc_int.2", align 8
  %12 = alloca %"class.sc_dt::sc_int.2", align 8
  %13 = alloca %"class.sc_dt::sc_int.3", align 8
  %14 = alloca %"class.sc_dt::sc_int.4", align 8
  %15 = alloca %"class.sc_dt::sc_int.5", align 8
  %16 = alloca %"class.sc_dt::sc_int.5", align 8
  %17 = alloca %"class.sc_dt::sc_int.6", align 8
  %18 = alloca %"class.sc_dt::sc_int.7", align 8
  %19 = alloca %"class.sc_dt::sc_int.3", align 8
  %20 = alloca %"class.sc_dt::sc_int.0", align 8
  %21 = alloca %"class.sc_dt::sc_int.0", align 8
  %22 = alloca %"class.sc_dt::sc_int.4", align 8
  %23 = alloca %"class.sc_dt::sc_int.5", align 8
  %24 = alloca %"class.sc_dt::sc_int.2", align 8
  %25 = alloca %"class.sc_dt::sc_int.2", align 8
  %26 = alloca %"class.sc_dt::sc_int.6", align 8
  %27 = alloca %"class.sc_dt::sc_int.8", align 8
  %28 = alloca %"class.sc_dt::sc_int.9", align 8
  %29 = alloca %"class.sc_dt::sc_int.9", align 8
  %30 = alloca %"class.sc_dt::sc_int", align 8
  %31 = alloca %"class.sc_dt::sc_int", align 8
  %32 = alloca %"class.sc_dt::sc_int.8", align 8
  %33 = alloca i8, align 1
  %34 = alloca i8, align 1
  %35 = alloca i8, align 1
  %36 = alloca i8, align 1
  %37 = alloca i8, align 1
  %38 = alloca i8, align 1
  %39 = alloca i8, align 1
  %40 = alloca i8, align 1
  %41 = alloca i8, align 1
  %42 = alloca i8, align 1
  %43 = alloca i8, align 1
  %44 = alloca i8, align 1
  %45 = alloca i8, align 1
  %46 = alloca i8, align 1
  %47 = alloca i8, align 1
  %48 = alloca i8, align 1
  %49 = alloca %"class.sc_dt::sc_int.1", align 8
  %50 = alloca %"class.sc_dt::sc_int.1", align 8
  %51 = alloca %"class.sc_dt::sc_int.5", align 8
  %52 = alloca %"class.sc_dt::sc_int.8", align 8
  %53 = alloca i8, align 1
  %54 = alloca i8, align 1
  %55 = alloca %"class.sc_dt::sc_int.1", align 8
  %56 = alloca %"class.sc_dt::sc_int", align 8
  %57 = alloca i8, align 1
  %58 = alloca i8, align 1
  %59 = alloca i8, align 1
  %60 = alloca %"class.sc_dt::sc_int.1", align 8
  %61 = alloca %"class.sc_dt::sc_int.8", align 8
  %62 = alloca i8, align 1
  %63 = alloca i8, align 1
  %64 = alloca %"class.sc_dt::sc_int.1", align 8
  %65 = alloca %"class.sc_dt::sc_int", align 8
  %66 = alloca i8, align 1
  %67 = alloca i8, align 1
  %68 = alloca i8, align 1
  %69 = alloca %"class.sc_dt::sc_int.1", align 8
  %70 = alloca %"class.sc_dt::sc_int.1", align 8
  %71 = alloca %"class.sc_dt::sc_int.5", align 8
  %72 = alloca %"class.sc_dt::sc_int.8", align 8
  %73 = alloca i8, align 1
  %74 = alloca i8, align 1
  %75 = alloca %"class.sc_dt::sc_int.5", align 8
  %76 = alloca %"class.sc_dt::sc_int.5", align 8
  %77 = alloca %"class.sc_dt::sc_int.1", align 8
  %78 = alloca %"class.sc_dt::sc_int.1", align 8
  %79 = alloca %"class.sc_dt::sc_int.8", align 8
  %80 = alloca i8, align 1
  %81 = alloca i8, align 1
  %82 = alloca i8, align 1
  %83 = alloca i8, align 1
  %84 = alloca i8, align 1
  %85 = alloca %"class.sc_dt::sc_int.1", align 8
  %86 = alloca %"class.sc_dt::sc_int.8", align 8
  %87 = alloca i8, align 1
  %88 = alloca i8, align 1
  %89 = alloca i8, align 1
  %90 = alloca i8, align 1
  %91 = alloca i8, align 1
  %92 = alloca %"class.sc_dt::sc_int.1", align 8
  %93 = alloca %"class.sc_dt::sc_int.1", align 8
  %94 = alloca %"class.sc_dt::sc_int.5", align 8
  %95 = alloca %"class.sc_dt::sc_int.8", align 8
  %96 = alloca i8, align 1
  %97 = alloca i8, align 1
  %98 = alloca %"class.sc_dt::sc_int.1", align 8
  %99 = alloca %"class.sc_dt::sc_int.8", align 8
  %100 = alloca i8, align 1
  %101 = alloca i8, align 1
  %102 = alloca %"class.sc_dt::sc_int.1", align 8
  %103 = alloca %"class.sc_dt::sc_int.1", align 8
  %104 = alloca %"class.sc_dt::sc_int.8", align 8
  %105 = alloca i8, align 1
  %106 = alloca i8, align 1
  %107 = alloca %"class.sc_dt::sc_int.1", align 8
  %108 = alloca %"class.sc_dt::sc_int.8", align 8
  %109 = alloca i8, align 1
  %110 = alloca i8, align 1
  %111 = alloca i8, align 1
  %112 = alloca i8, align 1
  %113 = alloca i8, align 1
  %114 = alloca i8, align 1
  %115 = alloca i8, align 1
  %116 = alloca i8, align 1
  %117 = alloca %"class.sc_dt::sc_int.107", align 8
  %118 = alloca %"class.sc_dt::sc_int.107", align 8
  %119 = alloca %"class.sc_dt::sc_int.0", align 8
  %120 = alloca i8, align 1
  %121 = alloca i8, align 1
  %122 = alloca i8, align 1
  %123 = alloca %"class.sc_dt::sc_int.107", align 8
  %124 = alloca %"class.sc_dt::sc_int.107", align 8
  %125 = alloca %"class.sc_dt::sc_int.0", align 8
  %126 = alloca i8, align 1
  %127 = alloca i8, align 1
  %128 = alloca i8, align 1
  %129 = alloca %"class.sc_dt::sc_int.1", align 8
  %130 = alloca %"class.sc_dt::sc_int.8", align 8
  %131 = alloca i8, align 1
  %132 = alloca i8, align 1
  %133 = alloca i8, align 1
  %134 = alloca i8, align 1
  %135 = alloca i8, align 1
  %136 = alloca i8, align 1
  %137 = alloca i8, align 1
  %138 = alloca %"class.sc_dt::sc_int.5", align 8
  %139 = alloca i8, align 1
  %140 = alloca i8, align 1
  %141 = alloca i8, align 1
  %142 = alloca %"class.sc_dt::sc_unsigned", align 8
  %143 = alloca %"class.sc_dt::sc_int.7", align 8
  %144 = alloca i8, align 1
  %145 = alloca i8, align 1
  %146 = alloca i8, align 1
  %147 = alloca i8, align 1
  %148 = alloca %"class.sc_dt::sc_int.5", align 8
  %149 = alloca i8, align 1
  %150 = alloca i8, align 1
  %151 = alloca i8, align 1
  %152 = alloca %"class.sc_dt::sc_int.1", align 8
  %153 = alloca %"class.sc_dt::sc_int.7", align 8
  %154 = alloca %"class.sc_dt::sc_int.7", align 8
  %155 = alloca %"class.sc_dt::sc_int.107", align 8
  %156 = alloca %"class.sc_dt::sc_int.1", align 8
  %157 = alloca %"class.sc_dt::sc_int.0", align 8
  %158 = alloca %"class.sc_dt::sc_int.107", align 8
  %159 = alloca %"class.sc_dt::sc_int.8", align 8
  %160 = alloca i8, align 1
  %161 = alloca i8, align 1
  %162 = alloca %"class.sc_dt::sc_int.1", align 8
  %163 = alloca %"class.sc_dt::sc_int.1", align 8
  %164 = alloca %"class.sc_dt::sc_int.5", align 8
  %165 = alloca %"class.sc_dt::sc_int.8", align 8
  %166 = alloca i8, align 1
  %167 = alloca i8, align 1
  %168 = alloca %"class.sc_dt::sc_int.1", align 8
  %169 = alloca i8, align 1
  %170 = alloca i8, align 1
  %171 = alloca i8, align 1
  %172 = alloca %"class.sc_dt::sc_int.1", align 8
  %173 = alloca %"class.sc_dt::sc_int.7", align 8
  %174 = alloca %"class.sc_dt::sc_int.7", align 8
  %175 = alloca %"class.sc_dt::sc_int.107", align 8
  %176 = alloca %"class.sc_dt::sc_int.1", align 8
  %177 = alloca %"class.sc_dt::sc_int.0", align 8
  %178 = alloca %"class.sc_dt::sc_int.107", align 8
  %179 = alloca %"class.sc_dt::sc_int.8", align 8
  %180 = alloca i8, align 1
  %181 = alloca i8, align 1
  %182 = alloca %"class.sc_dt::sc_int.1", align 8
  %183 = alloca %"class.sc_dt::sc_int.1", align 8
  %184 = alloca %"class.sc_dt::sc_int.5", align 8
  %185 = alloca %"class.sc_dt::sc_int.8", align 8
  %186 = alloca i8, align 1
  %187 = alloca i8, align 1
  %188 = alloca %"class.sc_dt::sc_int.5", align 8
  %189 = alloca i8, align 1
  %190 = alloca i8, align 1
  %191 = alloca i8, align 1
  %192 = alloca %"class.sc_dt::sc_int.5", align 8
  %193 = alloca i8, align 1
  %194 = alloca i8, align 1
  %195 = alloca i8, align 1
  %196 = alloca i8, align 1
  %197 = alloca i8, align 1
  %198 = alloca i8, align 1
  %199 = alloca i8, align 1
  %200 = alloca i8, align 1
  %201 = alloca i8, align 1
  %202 = alloca %"class.sc_dt::sc_int.1", align 8
  %203 = alloca %"class.sc_dt::sc_int.5", align 8
  %204 = alloca %"class.sc_dt::sc_int.1", align 8
  %205 = alloca %"class.sc_dt::sc_int.5", align 8
  %206 = alloca %"class.sc_dt::sc_int.107", align 8
  %207 = alloca %"class.sc_dt::sc_int.107", align 8
  %208 = alloca %"class.sc_dt::sc_int.8", align 8
  %209 = alloca i8, align 1
  %210 = alloca i8, align 1
  %211 = alloca %"class.sc_dt::sc_int.1", align 8
  %212 = alloca %"class.sc_dt::sc_int.1", align 8
  %213 = alloca %"class.sc_dt::sc_int.8", align 8
  %214 = alloca i8, align 1
  %215 = alloca i8, align 1
  %216 = alloca %"class.sc_dt::sc_int.5", align 8
  %217 = alloca i8, align 1
  %218 = alloca i8, align 1
  %219 = alloca i8, align 1
  %220 = alloca %"class.sc_dt::sc_int.5", align 8
  %221 = alloca i8, align 1
  %222 = alloca i8, align 1
  %223 = alloca i8, align 1
  %224 = alloca %"class.sc_dt::sc_int.1", align 8
  %225 = alloca %"class.sc_dt::sc_int.5", align 8
  %226 = alloca %"class.sc_dt::sc_int.8", align 8
  %227 = alloca i8, align 1
  %228 = alloca i8, align 1
  %229 = alloca %"class.sc_dt::sc_int.5", align 8
  %230 = alloca i8, align 1
  %231 = alloca i8, align 1
  %232 = alloca i8, align 1
  %233 = alloca %"class.sc_dt::sc_int.8", align 8
  %234 = alloca %"class.sc_dt::sc_int.108", align 8
  %235 = alloca %"class.sc_dt::sc_int.8", align 8
  %236 = alloca %"class.sc_dt::sc_int.108", align 8
  %237 = alloca %"class.sc_dt::sc_int.5", align 8
  %238 = alloca i8, align 1
  %239 = alloca i8, align 1
  %240 = alloca i8, align 1
  %241 = alloca %"class.sc_dt::sc_int.3", align 8
  %242 = alloca i8, align 1
  %243 = alloca i8, align 1
  %244 = alloca i8, align 1
  %245 = alloca i8, align 1
  %246 = alloca i8, align 1
  %247 = alloca i8, align 1
  %248 = alloca %"class.sc_dt::sc_int.3", align 8
  %249 = alloca i8, align 1
  %250 = alloca i8, align 1
  %251 = alloca i8, align 1
  %252 = alloca i8, align 1
  %253 = alloca i8, align 1
  %254 = alloca i8, align 1
  %255 = alloca %"class.sc_dt::sc_int.5", align 8
  %256 = alloca i8, align 1
  %257 = alloca i8, align 1
  %258 = alloca i8, align 1
  %259 = alloca i8, align 1
  %260 = alloca i8, align 1
  %261 = alloca i8, align 1
  %262 = alloca i8, align 1
  %263 = alloca i8, align 1
  %264 = alloca i8, align 1
  %265 = alloca %"class.sc_dt::sc_int.1", align 8
  %266 = alloca %"class.sc_dt::sc_int.5", align 8
  %267 = alloca %"class.sc_dt::sc_int.1", align 8
  %268 = alloca %"class.sc_dt::sc_int.5", align 8
  %269 = alloca %"class.sc_dt::sc_int.107", align 8
  %270 = alloca %"class.sc_dt::sc_int.107", align 8
  %271 = alloca %"class.sc_dt::sc_int.8", align 8
  %272 = alloca i8, align 1
  %273 = alloca i8, align 1
  %274 = alloca %"class.sc_dt::sc_int.1", align 8
  %275 = alloca %"class.sc_dt::sc_int.1", align 8
  %276 = alloca %"class.sc_dt::sc_int.8", align 8
  %277 = alloca i8, align 1
  %278 = alloca i8, align 1
  %279 = alloca %"class.sc_dt::sc_int.5", align 8
  %280 = alloca i8, align 1
  %281 = alloca i8, align 1
  %282 = alloca i8, align 1
  %283 = alloca %"class.sc_dt::sc_int.3", align 8
  %284 = alloca i8, align 1
  %285 = alloca i8, align 1
  %286 = alloca i8, align 1
  %287 = alloca %"class.sc_dt::sc_int.5", align 8
  %288 = alloca i8, align 1
  %289 = alloca i8, align 1
  %290 = alloca i8, align 1
  %291 = alloca i8, align 1
  %292 = alloca i8, align 1
  %293 = alloca i8, align 1
  %294 = alloca %"class.sc_dt::sc_int.5", align 8
  %295 = alloca i8, align 1
  %296 = alloca i8, align 1
  %297 = alloca i8, align 1
  %298 = alloca %"class.sc_dt::sc_int.1", align 8
  %299 = alloca %"class.sc_dt::sc_int.5", align 8
  %300 = alloca %"class.sc_dt::sc_int.8", align 8
  %301 = alloca i8, align 1
  %302 = alloca i8, align 1
  %303 = alloca %"class.sc_dt::sc_int.5", align 8
  %304 = alloca i8, align 1
  %305 = alloca i8, align 1
  %306 = alloca i8, align 1
  %307 = alloca %"class.sc_dt::sc_int.5", align 8
  %308 = alloca i8, align 1
  %309 = alloca i8, align 1
  %310 = alloca i8, align 1
  %311 = alloca %"class.sc_dt::sc_int.5", align 8
  %312 = alloca i8, align 1
  %313 = alloca i8, align 1
  %314 = alloca i8, align 1
  %315 = alloca %"class.sc_dt::sc_int.5", align 8
  %316 = alloca i8, align 1
  %317 = alloca i8, align 1
  %318 = alloca i8, align 1
  %319 = alloca %"class.sc_dt::sc_int.5", align 8
  %320 = alloca i8, align 1
  %321 = alloca i8, align 1
  %322 = alloca i8, align 1
  %323 = alloca %"class.sc_dt::sc_int.5", align 8
  %324 = alloca %"class.sc_dt::sc_int.7", align 8
  %325 = alloca i8, align 1
  %326 = alloca i8, align 1
  %327 = alloca i8, align 1
  %328 = alloca %"class.sc_dt::sc_int.1", align 8
  %329 = alloca %"class.sc_dt::sc_int.5", align 8
  %330 = alloca %"class.sc_dt::sc_int.1", align 8
  %331 = alloca %"class.sc_dt::sc_int.5", align 8
  %332 = alloca %"class.sc_dt::sc_int.5", align 8
  %333 = alloca %"class.sc_dt::sc_int.8", align 8
  %334 = alloca i8, align 1
  %335 = alloca i8, align 1
  %336 = alloca %"class.sc_dt::sc_int.1", align 8
  %337 = alloca %"class.sc_dt::sc_int.5", align 8
  %338 = alloca %"class.sc_dt::sc_int.8", align 8
  %339 = alloca i8, align 1
  %340 = alloca i8, align 1
  %341 = alloca %"class.sc_dt::sc_int.5", align 8
  %342 = alloca i8, align 1
  %343 = alloca i8, align 1
  %344 = alloca i8, align 1
  %345 = alloca %"class.sc_dt::sc_int.5", align 8
  %346 = alloca i8, align 1
  %347 = alloca i8, align 1
  %348 = alloca i8, align 1
  %349 = alloca %"class.sc_dt::sc_int.5", align 8
  %350 = alloca i8, align 1
  %351 = alloca i8, align 1
  %352 = alloca i8, align 1
  %353 = alloca %"class.sc_dt::sc_int.5", align 8
  %354 = alloca i8, align 1
  %355 = alloca i8, align 1
  %356 = alloca i8, align 1
  %357 = alloca %"class.sc_dt::sc_int.5", align 8
  %358 = alloca %"class.sc_dt::sc_int.109", align 8
  %359 = alloca i8, align 1
  %360 = alloca i8, align 1
  %361 = alloca i8, align 1
  %362 = alloca %"class.sc_dt::sc_int.1", align 8
  %363 = alloca %"class.sc_dt::sc_int.1", align 8
  %364 = alloca %"class.sc_dt::sc_int.1", align 8
  %365 = alloca %"class.sc_dt::sc_int.5", align 8
  %366 = alloca %"class.sc_dt::sc_int.5", align 8
  %367 = alloca %"class.sc_dt::sc_int.8", align 8
  %368 = alloca i8, align 1
  %369 = alloca i8, align 1
  %370 = alloca %"class.sc_dt::sc_int.1", align 8
  %371 = alloca %"class.sc_dt::sc_int.1", align 8
  %372 = alloca %"class.sc_dt::sc_int.1", align 8
  %373 = alloca %"class.sc_dt::sc_int.5", align 8
  %374 = alloca %"class.sc_dt::sc_int.5", align 8
  %375 = alloca %"class.sc_dt::sc_int.8", align 8
  %376 = alloca i8, align 1
  %377 = alloca i8, align 1
  %378 = alloca %"class.sc_dt::sc_int.1", align 8
  %379 = alloca %"class.sc_dt::sc_int.1", align 8
  %380 = alloca %"class.sc_dt::sc_int.1", align 8
  %381 = alloca %"class.sc_dt::sc_int.5", align 8
  %382 = alloca %"class.sc_dt::sc_int.5", align 8
  %383 = alloca %"class.sc_dt::sc_int.8", align 8
  %384 = alloca i8, align 1
  %385 = alloca i8, align 1
  %386 = alloca %"class.sc_dt::sc_int.5", align 8
  %387 = alloca %"class.sc_dt::sc_int.5", align 8
  %388 = alloca %"class.sc_dt::sc_int.1", align 8
  %389 = alloca %"class.sc_dt::sc_int.1", align 8
  %390 = alloca %"class.sc_dt::sc_int.1", align 8
  %391 = alloca %"class.sc_dt::sc_int.5", align 8
  %392 = alloca %"class.sc_dt::sc_int.8", align 8
  %393 = alloca i8, align 1
  %394 = alloca i8, align 1
  %395 = alloca %"class.sc_dt::sc_int.1", align 8
  %396 = alloca %"class.sc_dt::sc_int.1", align 8
  %397 = alloca %"class.sc_dt::sc_int.1", align 8
  %398 = alloca %"class.sc_dt::sc_int.5", align 8
  %399 = alloca %"class.sc_dt::sc_int.5", align 8
  %400 = alloca %"class.sc_dt::sc_int.8", align 8
  %401 = alloca i8, align 1
  %402 = alloca i8, align 1
  %403 = alloca %"class.sc_dt::sc_int.1", align 8
  %404 = alloca %"class.sc_dt::sc_int.1", align 8
  %405 = alloca %"class.sc_dt::sc_int.5", align 8
  %406 = alloca %"class.sc_dt::sc_int.5", align 8
  %407 = alloca %"class.sc_dt::sc_int.8", align 8
  %408 = alloca i8, align 1
  %409 = alloca i8, align 1
  %410 = alloca %"class.sc_dt::sc_int.1", align 8
  %411 = alloca %"class.sc_dt::sc_int.5", align 8
  %412 = alloca %"class.sc_dt::sc_int.5", align 8
  %413 = alloca %"class.sc_dt::sc_int.8", align 8
  %414 = alloca i8, align 1
  %415 = alloca i8, align 1
  %416 = alloca i8, align 1
  %417 = alloca i8, align 1
  %418 = alloca i8, align 1
  %419 = alloca %"class.sc_dt::sc_int.5", align 8
  %420 = alloca i8, align 1
  %421 = alloca i8, align 1
  %422 = alloca i8, align 1
  %423 = alloca %"class.sc_dt::sc_int.5", align 8
  %424 = alloca %"class.sc_dt::sc_int.5", align 8
  %425 = alloca i8, align 1
  %426 = alloca i8, align 1
  %427 = alloca i8, align 1
  %428 = alloca %"class.sc_dt::sc_int.8", align 8
  %429 = alloca i8, align 1
  %430 = alloca i8, align 1
  %431 = alloca %"class.sc_dt::sc_int.1", align 8
  %432 = alloca i8, align 1
  %433 = alloca i8, align 1
  %434 = alloca i8, align 1
  %435 = alloca %"class.sc_dt::sc_int.5", align 8
  %436 = alloca %"class.sc_dt::sc_int.8", align 8
  %437 = alloca i8, align 1
  %438 = alloca i8, align 1
  %439 = alloca i8, align 1
  %440 = alloca %"class.sc_dt::sc_int.5", align 8
  %441 = alloca i8, align 1
  %442 = alloca i8, align 1
  %443 = alloca i8, align 1
  %444 = alloca %"class.sc_dt::sc_int.0", align 8
  %445 = alloca i8, align 1
  %446 = alloca i8, align 1
  %447 = alloca i8, align 1
  %448 = alloca %"class.sc_dt::sc_int.5", align 8
  %449 = alloca i8, align 1
  %450 = alloca i8, align 1
  %451 = alloca i8, align 1
  %452 = alloca %"class.sc_dt::sc_int.1", align 8
  %453 = alloca %"class.sc_dt::sc_int.1", align 8
  %454 = alloca %"class.sc_dt::sc_int.6", align 8
  %455 = alloca %"class.sc_dt::sc_int.5", align 8
  %456 = alloca %"class.sc_dt::sc_int.107", align 8
  %457 = alloca %"class.sc_dt::sc_int.8", align 8
  %458 = alloca i8, align 1
  %459 = alloca i8, align 1
  %460 = alloca %"class.sc_dt::sc_int.1", align 8
  %461 = alloca %"class.sc_dt::sc_int.0", align 8
  %462 = alloca %"class.sc_dt::sc_int.1", align 8
  %463 = alloca %"class.sc_dt::sc_int.6", align 8
  %464 = alloca %"class.sc_dt::sc_int.8", align 8
  %465 = alloca i8, align 1
  %466 = alloca i8, align 1
  %467 = alloca %"class.sc_dt::sc_int.1", align 8
  %468 = alloca %"class.sc_dt::sc_int.5", align 8
  %469 = alloca %"class.sc_dt::sc_int.8", align 8
  %470 = alloca i8, align 1
  %471 = alloca i8, align 1
  %472 = alloca %"class.sc_dt::sc_int.5", align 8
  %473 = alloca i8, align 1
  %474 = alloca i8, align 1
  %475 = alloca i8, align 1
  %476 = alloca %"class.sc_dt::sc_int.5", align 8
  %477 = alloca i8, align 1
  %478 = alloca i8, align 1
  %479 = alloca i8, align 1
  %480 = alloca %"class.sc_dt::sc_int.5", align 8
  %481 = alloca i8, align 1
  %482 = alloca i8, align 1
  %483 = alloca i8, align 1
  %484 = alloca %"class.sc_dt::sc_int.107", align 8
  %485 = alloca i8, align 1
  %486 = alloca i8, align 1
  %487 = alloca i8, align 1
  %488 = alloca %"class.sc_dt::sc_int.1", align 8
  %489 = alloca %"class.sc_dt::sc_int.5", align 8
  %490 = alloca %"class.sc_dt::sc_int.5", align 8
  %491 = alloca %"class.sc_dt::sc_int.8", align 8
  %492 = alloca i8, align 1
  %493 = alloca i8, align 1
  %494 = alloca %"class.sc_dt::sc_int.1", align 8
  %495 = alloca %"class.sc_dt::sc_int.5", align 8
  %496 = alloca %"class.sc_dt::sc_int.5", align 8
  %497 = alloca %"class.sc_dt::sc_int.1", align 8
  %498 = alloca %"class.sc_dt::sc_int.1", align 8
  %499 = alloca %"class.sc_dt::sc_int.8", align 8
  %500 = alloca i8, align 1
  %501 = alloca i8, align 1
  %502 = alloca %"class.sc_dt::sc_int.1", align 8
  %503 = alloca %"class.sc_dt::sc_int.5", align 8
  %504 = alloca %"class.sc_dt::sc_int.5", align 8
  %505 = alloca %"class.sc_dt::sc_int.1", align 8
  %506 = alloca %"class.sc_dt::sc_int.1", align 8
  %507 = alloca %"class.sc_dt::sc_int.8", align 8
  %508 = alloca i8, align 1
  %509 = alloca i8, align 1
  %510 = alloca %"class.sc_dt::sc_int.1", align 8
  %511 = alloca %"class.sc_dt::sc_int.5", align 8
  %512 = alloca %"class.sc_dt::sc_int.5", align 8
  %513 = alloca %"class.sc_dt::sc_int.5", align 8
  %514 = alloca %"class.sc_dt::sc_int.1", align 8
  %515 = alloca %"class.sc_dt::sc_int.1", align 8
  %516 = alloca %"class.sc_dt::sc_int.8", align 8
  %517 = alloca i8, align 1
  %518 = alloca i8, align 1
  %519 = alloca %"class.sc_dt::sc_int.5", align 8
  %520 = alloca %"class.sc_dt::sc_int.5", align 8
  %521 = alloca %"class.sc_dt::sc_int.8", align 8
  %522 = alloca i8, align 1
  %523 = alloca i8, align 1
  %524 = alloca %"class.sc_dt::sc_int.1", align 8
  %525 = alloca %"class.sc_dt::sc_int.5", align 8
  %526 = alloca %"class.sc_dt::sc_int.1", align 8
  %527 = alloca %"class.sc_dt::sc_int.5", align 8
  %528 = alloca %"class.sc_dt::sc_int.8", align 8
  %529 = alloca i8, align 1
  %530 = alloca i8, align 1
  %531 = alloca %"class.sc_dt::sc_int.5", align 8
  %532 = alloca i8, align 1
  %533 = alloca i8, align 1
  %534 = alloca i8, align 1
  %535 = alloca %"class.sc_dt::sc_int.5", align 8
  %536 = alloca i8, align 1
  %537 = alloca i8, align 1
  %538 = alloca i8, align 1
  %539 = alloca i8, align 1
  %540 = alloca i8, align 1
  %541 = alloca i8, align 1
  %542 = alloca %"class.sc_dt::sc_int.5", align 8
  %543 = alloca %"class.sc_dt::sc_int.5", align 8
  %544 = alloca i8, align 1
  %545 = alloca i8, align 1
  %546 = alloca i8, align 1
  %547 = alloca %"class.sc_dt::sc_int.107", align 8
  %548 = alloca %"class.sc_dt::sc_int.0", align 8
  %549 = alloca %"class.sc_dt::sc_int.1", align 8
  %550 = alloca i8, align 1
  %551 = alloca i8, align 1
  %552 = alloca i8, align 1
  %553 = alloca %"class.sc_dt::sc_int.5", align 8
  %554 = alloca i8, align 1
  %555 = alloca i8, align 1
  %556 = alloca i8, align 1
  %557 = alloca i8, align 1
  %558 = alloca i8, align 1
  %559 = alloca i8, align 1
  %560 = alloca i8, align 1
  %561 = alloca i8, align 1
  %562 = alloca i8, align 1
  %563 = alloca %"class.sc_dt::sc_int.1", align 8
  %564 = alloca %"class.sc_dt::sc_int.5", align 8
  %565 = alloca %"class.sc_dt::sc_int.1", align 8
  %566 = alloca %"class.sc_dt::sc_int.6", align 8
  %567 = alloca %"class.sc_dt::sc_int.5", align 8
  %568 = alloca %"class.sc_dt::sc_int.8", align 8
  %569 = alloca i8, align 1
  %570 = alloca i8, align 1
  %571 = alloca %"class.sc_dt::sc_int.1", align 8
  %572 = alloca %"class.sc_dt::sc_int.3", align 8
  %573 = alloca %"class.sc_dt::sc_int.1", align 8
  %574 = alloca %"class.sc_dt::sc_int.6", align 8
  %575 = alloca %"class.sc_dt::sc_int.8", align 8
  %576 = alloca i8, align 1
  %577 = alloca i8, align 1
  %578 = alloca %"class.sc_dt::sc_int.5", align 8
  %579 = alloca i8, align 1
  %580 = alloca i8, align 1
  %581 = alloca i8, align 1
  %582 = alloca %"class.sc_dt::sc_int.1", align 8
  %583 = alloca %"class.sc_dt::sc_int.1", align 8
  %584 = alloca %"class.sc_dt::sc_int.5", align 8
  %585 = alloca %"class.sc_dt::sc_int.5", align 8
  %586 = alloca %"class.sc_dt::sc_int.8", align 8
  %587 = alloca i8, align 1
  %588 = alloca i8, align 1
  %589 = alloca %"class.sc_dt::sc_int.1", align 8
  %590 = alloca %"class.sc_dt::sc_int.1", align 8
  %591 = alloca %"class.sc_dt::sc_int.5", align 8
  %592 = alloca %"class.sc_dt::sc_int.5", align 8
  %593 = alloca %"class.sc_dt::sc_int.8", align 8
  %594 = alloca i8, align 1
  %595 = alloca i8, align 1
  %596 = alloca %"class.sc_dt::sc_int.1", align 8
  %597 = alloca %"class.sc_dt::sc_int.1", align 8
  %598 = alloca %"class.sc_dt::sc_int.5", align 8
  %599 = alloca %"class.sc_dt::sc_int.8", align 8
  %600 = alloca i8, align 1
  %601 = alloca i8, align 1
  %602 = alloca %"class.sc_dt::sc_int.1", align 8
  %603 = alloca %"class.sc_dt::sc_int.1", align 8
  %604 = alloca %"class.sc_dt::sc_int.5", align 8
  %605 = alloca %"class.sc_dt::sc_int.5", align 8
  %606 = alloca %"class.sc_dt::sc_int.5", align 8
  %607 = alloca %"class.sc_dt::sc_int.5", align 8
  %608 = alloca %"class.sc_dt::sc_int.5", align 8
  %609 = alloca %"class.sc_dt::sc_int.5", align 8
  %610 = alloca %"class.sc_dt::sc_int.5", align 8
  %611 = alloca %"class.sc_dt::sc_int.8", align 8
  %612 = alloca i8, align 1
  %613 = alloca i8, align 1
  %614 = alloca %"class.sc_dt::sc_int.1", align 8
  %615 = alloca %"class.sc_dt::sc_int.5", align 8
  %616 = alloca %"class.sc_dt::sc_int.8", align 8
  %617 = alloca i8, align 1
  %618 = alloca i8, align 1
  %619 = alloca %"class.sc_dt::sc_int.1", align 8
  %620 = alloca %"class.sc_dt::sc_int.5", align 8
  %621 = alloca %"class.sc_dt::sc_int.8", align 8
  %622 = alloca i8, align 1
  %623 = alloca i8, align 1
  %624 = alloca %"class.sc_dt::sc_int.1", align 8
  %625 = alloca %"class.sc_dt::sc_int.1", align 8
  %626 = alloca %"class.sc_dt::sc_int.5", align 8
  %627 = alloca %"class.sc_dt::sc_int.8", align 8
  %628 = alloca i8, align 1
  %629 = alloca i8, align 1
  %630 = alloca %"class.sc_dt::sc_int.1", align 8
  %631 = alloca i8, align 1
  %632 = alloca i8, align 1
  %633 = alloca i8, align 1
  %634 = alloca %"class.sc_dt::sc_int.1", align 8
  %635 = alloca %"class.sc_dt::sc_int.5", align 8
  %636 = alloca %"class.sc_dt::sc_int.1", align 8
  %637 = alloca %"class.sc_dt::sc_int.6", align 8
  %638 = alloca %"class.sc_dt::sc_int.5", align 8
  %639 = alloca %"class.sc_dt::sc_int.8", align 8
  %640 = alloca i8, align 1
  %641 = alloca i8, align 1
  %642 = alloca %"class.sc_dt::sc_int.1", align 8
  %643 = alloca %"class.sc_dt::sc_int.3", align 8
  %644 = alloca %"class.sc_dt::sc_int.1", align 8
  %645 = alloca %"class.sc_dt::sc_int.6", align 8
  %646 = alloca %"class.sc_dt::sc_int.8", align 8
  %647 = alloca i8, align 1
  %648 = alloca i8, align 1
  %649 = alloca %"class.sc_dt::sc_int.5", align 8
  %650 = alloca i8, align 1
  %651 = alloca i8, align 1
  %652 = alloca i8, align 1
  %653 = alloca %"class.sc_dt::sc_int.1", align 8
  %654 = alloca %"class.sc_dt::sc_int.1", align 8
  %655 = alloca %"class.sc_dt::sc_int.5", align 8
  %656 = alloca %"class.sc_dt::sc_int.5", align 8
  %657 = alloca %"class.sc_dt::sc_int.8", align 8
  %658 = alloca i8, align 1
  %659 = alloca i8, align 1
  %660 = alloca %"class.sc_dt::sc_int.1", align 8
  %661 = alloca %"class.sc_dt::sc_int.1", align 8
  %662 = alloca %"class.sc_dt::sc_int.5", align 8
  %663 = alloca %"class.sc_dt::sc_int.5", align 8
  %664 = alloca %"class.sc_dt::sc_int.8", align 8
  %665 = alloca i8, align 1
  %666 = alloca i8, align 1
  %667 = alloca %"class.sc_dt::sc_int.1", align 8
  %668 = alloca %"class.sc_dt::sc_int.1", align 8
  %669 = alloca %"class.sc_dt::sc_int.5", align 8
  %670 = alloca %"class.sc_dt::sc_int.8", align 8
  %671 = alloca i8, align 1
  %672 = alloca i8, align 1
  %673 = alloca %"class.sc_dt::sc_int.1", align 8
  %674 = alloca %"class.sc_dt::sc_int.1", align 8
  %675 = alloca %"class.sc_dt::sc_int.5", align 8
  %676 = alloca %"class.sc_dt::sc_int.5", align 8
  %677 = alloca %"class.sc_dt::sc_int.8", align 8
  %678 = alloca i8, align 1
  %679 = alloca i8, align 1
  %680 = alloca %"class.sc_dt::sc_int.1", align 8
  %681 = alloca %"class.sc_dt::sc_int.1", align 8
  %682 = alloca %"class.sc_dt::sc_int.5", align 8
  %683 = alloca %"class.sc_dt::sc_int.8", align 8
  %684 = alloca i8, align 1
  %685 = alloca i8, align 1
  %686 = alloca %"class.sc_dt::sc_int.1", align 8
  %687 = alloca %"class.sc_dt::sc_int.1", align 8
  %688 = alloca %"class.sc_dt::sc_int.5", align 8
  %689 = alloca %"class.sc_dt::sc_int.8", align 8
  %690 = alloca i8, align 1
  %691 = alloca i8, align 1
  %692 = alloca %"class.sc_dt::sc_int.1", align 8
  %693 = alloca %"class.sc_dt::sc_int.1", align 8
  %694 = alloca %"class.sc_dt::sc_int.5", align 8
  %695 = alloca %"class.sc_dt::sc_int.8", align 8
  %696 = alloca i8, align 1
  %697 = alloca i8, align 1
  %698 = alloca %"class.sc_dt::sc_int.1", align 8
  %699 = alloca %"class.sc_dt::sc_int.5", align 8
  %700 = alloca %"class.sc_dt::sc_int.1", align 8
  %701 = alloca %"class.sc_dt::sc_int.1", align 8
  %702 = alloca %"class.sc_dt::sc_int.5", align 8
  %703 = alloca %"class.sc_dt::sc_int.8", align 8
  %704 = alloca i8, align 1
  %705 = alloca i8, align 1
  %706 = alloca %"class.sc_dt::sc_int.1", align 8
  %707 = alloca %"class.sc_dt::sc_int.5", align 8
  %708 = alloca %"class.sc_dt::sc_int.5", align 8
  %709 = alloca %"class.sc_dt::sc_int.8", align 8
  %710 = alloca i8, align 1
  %711 = alloca i8, align 1
  %712 = alloca %"class.sc_dt::sc_int.1", align 8
  %713 = alloca %"class.sc_dt::sc_int.5", align 8
  %714 = alloca %"class.sc_dt::sc_int.8", align 8
  %715 = alloca i8, align 1
  %716 = alloca i8, align 1
  %717 = alloca %"class.sc_dt::sc_int.1", align 8
  %718 = alloca %"class.sc_dt::sc_int.5", align 8
  %719 = alloca %"class.sc_dt::sc_int.5", align 8
  %720 = alloca %"class.sc_dt::sc_int.5", align 8
  %721 = alloca %"class.sc_dt::sc_int.8", align 8
  %722 = alloca i8, align 1
  %723 = alloca i8, align 1
  %724 = alloca %"class.sc_dt::sc_int.1", align 8
  %725 = alloca %"class.sc_dt::sc_int.5", align 8
  %726 = alloca %"class.sc_dt::sc_int.8", align 8
  %727 = alloca i8, align 1
  %728 = alloca i8, align 1
  %729 = alloca %"class.sc_dt::sc_int.1", align 8
  %730 = alloca %"class.sc_dt::sc_int.1", align 8
  %731 = alloca %"class.sc_dt::sc_int.5", align 8
  %732 = alloca %"class.sc_dt::sc_int.8", align 8
  %733 = alloca i8, align 1
  %734 = alloca i8, align 1
  %735 = alloca %"class.sc_dt::sc_int.1", align 8
  %736 = alloca %"class.sc_dt::sc_int.5", align 8
  %737 = alloca %"class.sc_dt::sc_int.1", align 8
  %738 = alloca %"class.sc_dt::sc_int.5", align 8
  %739 = alloca %"class.sc_dt::sc_int.107", align 8
  %740 = alloca %"class.sc_dt::sc_int.107", align 8
  %741 = alloca %"class.sc_dt::sc_int.8", align 8
  %742 = alloca i8, align 1
  %743 = alloca i8, align 1
  %744 = alloca %"class.sc_dt::sc_int.1", align 8
  %745 = alloca %"class.sc_dt::sc_int.1", align 8
  %746 = alloca %"class.sc_dt::sc_int.8", align 8
  %747 = alloca i8, align 1
  %748 = alloca i8, align 1
  %749 = alloca %"class.sc_dt::sc_int.1", align 8
  %750 = alloca %"class.sc_dt::sc_int.5", align 8
  %751 = alloca %"class.sc_dt::sc_int.8", align 8
  %752 = alloca i8, align 1
  %753 = alloca i8, align 1
  %754 = alloca %"class.sc_dt::sc_int.107", align 8
  %755 = alloca %"class.sc_dt::sc_int.0", align 8
  %756 = alloca %"class.sc_dt::sc_int.1", align 8
  %757 = alloca i8, align 1
  %758 = alloca i8, align 1
  %759 = alloca i8, align 1
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %2) #6
  call void @_ZN5sc_dt6sc_intILi16EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %2)
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %3) #6
  invoke void @_ZN5sc_dt6sc_intILi16EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %3)
          to label %760 unwind label %885

760:                                              ; preds = %1
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %4) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %4)
          to label %761 unwind label %887

761:                                              ; preds = %760
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %5) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %762 unwind label %889

762:                                              ; preds = %761
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %6) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %6)
          to label %763 unwind label %891

763:                                              ; preds = %762
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %7) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %7)
          to label %764 unwind label %893

764:                                              ; preds = %763
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %8) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %765 unwind label %895

765:                                              ; preds = %764
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %9) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %766 unwind label %897

766:                                              ; preds = %765
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %10) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %10)
          to label %767 unwind label %899

767:                                              ; preds = %766
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %11) #6
  invoke void @_ZN5sc_dt6sc_intILi5EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %11)
          to label %768 unwind label %901

768:                                              ; preds = %767
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %12) #6
  invoke void @_ZN5sc_dt6sc_intILi5EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %12)
          to label %769 unwind label %903

769:                                              ; preds = %768
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %13) #6
  invoke void @_ZN5sc_dt6sc_intILi6EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %13)
          to label %770 unwind label %905

770:                                              ; preds = %769
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %14) #6
  invoke void @_ZN5sc_dt6sc_intILi12EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %14)
          to label %771 unwind label %907

771:                                              ; preds = %770
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %15) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %15)
          to label %772 unwind label %909

772:                                              ; preds = %771
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %16) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %16)
          to label %773 unwind label %911

773:                                              ; preds = %772
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %17) #6
  invoke void @_ZN5sc_dt6sc_intILi2EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %17)
          to label %774 unwind label %913

774:                                              ; preds = %773
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %18) #6
  invoke void @_ZN5sc_dt6sc_intILi4EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %18)
          to label %775 unwind label %915

775:                                              ; preds = %774
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %19) #6
  invoke void @_ZN5sc_dt6sc_intILi6EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %19)
          to label %776 unwind label %917

776:                                              ; preds = %775
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %20) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %20)
          to label %777 unwind label %919

777:                                              ; preds = %776
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %21) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %21)
          to label %778 unwind label %921

778:                                              ; preds = %777
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %22) #6
  invoke void @_ZN5sc_dt6sc_intILi12EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %22)
          to label %779 unwind label %923

779:                                              ; preds = %778
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %23) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %23)
          to label %780 unwind label %925

780:                                              ; preds = %779
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %24) #6
  invoke void @_ZN5sc_dt6sc_intILi5EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %24)
          to label %781 unwind label %927

781:                                              ; preds = %780
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %25) #6
  invoke void @_ZN5sc_dt6sc_intILi5EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %25)
          to label %782 unwind label %929

782:                                              ; preds = %781
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %26) #6
  invoke void @_ZN5sc_dt6sc_intILi2EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %783 unwind label %931

783:                                              ; preds = %782
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %27) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %27)
          to label %784 unwind label %933

784:                                              ; preds = %783
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %28) #6
  invoke void @_ZN5sc_dt6sc_intILi32EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %28)
          to label %785 unwind label %935

785:                                              ; preds = %784
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %29) #6
  invoke void @_ZN5sc_dt6sc_intILi32EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %29)
          to label %786 unwind label %937

786:                                              ; preds = %785
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %30) #6
  invoke void @_ZN5sc_dt6sc_intILi16EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %30)
          to label %787 unwind label %939

787:                                              ; preds = %786
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %31) #6
  invoke void @_ZN5sc_dt6sc_intILi16EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %31)
          to label %788 unwind label %941

788:                                              ; preds = %787
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %32) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %32)
          to label %789 unwind label %943

789:                                              ; preds = %788
  %790 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef 0)
          to label %791 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

791:                                              ; preds = %789
  %792 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 0)
          to label %793 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

793:                                              ; preds = %791
  %794 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 0)
          to label %795 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

795:                                              ; preds = %793
  %796 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %6, i32 noundef 0)
          to label %797 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

797:                                              ; preds = %795
  %798 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %7, i32 noundef 0)
          to label %799 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

799:                                              ; preds = %797
  %800 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 0)
          to label %801 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

801:                                              ; preds = %799
  %802 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 0)
          to label %803 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

803:                                              ; preds = %801
  %804 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %10, i32 noundef 0)
          to label %805 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

805:                                              ; preds = %803
  %806 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 0)
          to label %807 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

807:                                              ; preds = %805
  %808 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %12, i32 noundef 0)
          to label %809 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

809:                                              ; preds = %807
  %810 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %13, i32 noundef 0)
          to label %811 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

811:                                              ; preds = %809
  %812 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %14, i32 noundef 0)
          to label %813 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

813:                                              ; preds = %811
  %814 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 0)
          to label %815 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

815:                                              ; preds = %813
  %816 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %16, i32 noundef 0)
          to label %817 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

817:                                              ; preds = %815
  %818 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %17, i32 noundef 0)
          to label %819 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

819:                                              ; preds = %817
  %820 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi4EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, i32 noundef 0)
          to label %821 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

821:                                              ; preds = %819
  %822 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %19, i32 noundef 0)
          to label %823 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

823:                                              ; preds = %821
  %824 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %20, i32 noundef 0)
          to label %825 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

825:                                              ; preds = %823
  %826 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %21, i32 noundef 0)
          to label %827 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

827:                                              ; preds = %825
  %828 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %22, i32 noundef 0)
          to label %829 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

829:                                              ; preds = %827
  %830 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %23, i32 noundef 0)
          to label %831 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

831:                                              ; preds = %829
  %832 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %24, i32 noundef 0)
          to label %833 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

833:                                              ; preds = %831
  %834 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %25, i32 noundef 0)
          to label %835 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

835:                                              ; preds = %833
  %836 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %26, i32 noundef -1)
          to label %837 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

837:                                              ; preds = %835
  %838 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %27, i32 noundef 0)
          to label %839 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

839:                                              ; preds = %837
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %33) #6
  store i8 1, ptr %33, align 1, !tbaa !5
  %840 = getelementptr inbounds i8, ptr %0, i64 3096
  %841 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %840, ptr noundef nonnull align 1 dereferenceable(1) %33)
          to label %842 unwind label %945

842:                                              ; preds = %839
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %33) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %34) #6
  store i8 1, ptr %34, align 1, !tbaa !5
  %843 = getelementptr inbounds i8, ptr %0, i64 3288
  %844 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %843, ptr noundef nonnull align 1 dereferenceable(1) %34)
          to label %845 unwind label %947

845:                                              ; preds = %842
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %34) #6
  %846 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %32, i32 noundef 0)
          to label %847 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

847:                                              ; preds = %845
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %35) #6
  store i8 0, ptr %35, align 1, !tbaa !5
  %848 = getelementptr inbounds i8, ptr %0, i64 2360
  %849 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %35)
          to label %850 unwind label %949

850:                                              ; preds = %847
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %35) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %36) #6
  store i8 0, ptr %36, align 1, !tbaa !5
  %851 = getelementptr inbounds i8, ptr %0, i64 3832
  %852 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %36)
          to label %853 unwind label %951

853:                                              ; preds = %850
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %36) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %854 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

854:                                              ; preds = %853
  %855 = getelementptr inbounds i8, ptr %0, i64 416
  %856 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %855)
          to label %857 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

857:                                              ; preds = %854
  %858 = load i8, ptr %856, align 1, !tbaa !5, !range !9, !noundef !10
  %859 = trunc nuw i8 %858 to i1
  br i1 %859, label %860, label %.invoke2319

860:                                              ; preds = %857
  %861 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef 0)
          to label %862 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

862:                                              ; preds = %860
  %863 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 0)
          to label %864 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

864:                                              ; preds = %862
  %865 = getelementptr inbounds i8, ptr %0, i64 2552
  %866 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %865, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %867 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

867:                                              ; preds = %864
  %868 = getelementptr inbounds i8, ptr %0, i64 2728
  %869 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %868, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %870 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

870:                                              ; preds = %867
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %37) #6
  store i8 0, ptr %37, align 1, !tbaa !5
  %871 = getelementptr inbounds i8, ptr %0, i64 2904
  %872 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %871, ptr noundef nonnull align 1 dereferenceable(1) %37)
          to label %873 unwind label %953

873:                                              ; preds = %870
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %37) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %38) #6
  store i8 1, ptr %38, align 1, !tbaa !5
  %874 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %38)
          to label %875 unwind label %955

875:                                              ; preds = %873
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %38) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2109 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

.preheader2109:                                   ; preds = %875
  %876 = getelementptr inbounds i8, ptr %0, i64 600
  br label %877

877:                                              ; preds = %.preheader2109, %959
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %39) #6
  store i8 0, ptr %39, align 1, !tbaa !5
  %878 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %39)
          to label %879 unwind label %957

879:                                              ; preds = %877
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %39) #6
  %880 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %876)
          to label %881 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2111

881:                                              ; preds = %879
  %882 = load i8, ptr %880, align 1, !tbaa !5, !range !9, !noundef !10
  %883 = trunc nuw i8 %882 to i1
  br i1 %883, label %884, label %959

884:                                              ; preds = %881
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %960 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

885:                                              ; preds = %1
  %886 = landingpad { ptr, i32 }
          cleanup
  br label %7758

887:                                              ; preds = %760
  %888 = landingpad { ptr, i32 }
          cleanup
  br label %7757

889:                                              ; preds = %761
  %890 = landingpad { ptr, i32 }
          cleanup
  br label %7756

891:                                              ; preds = %762
  %892 = landingpad { ptr, i32 }
          cleanup
  br label %7755

893:                                              ; preds = %763
  %894 = landingpad { ptr, i32 }
          cleanup
  br label %7754

895:                                              ; preds = %764
  %896 = landingpad { ptr, i32 }
          cleanup
  br label %7753

897:                                              ; preds = %765
  %898 = landingpad { ptr, i32 }
          cleanup
  br label %7752

899:                                              ; preds = %766
  %900 = landingpad { ptr, i32 }
          cleanup
  br label %7751

901:                                              ; preds = %767
  %902 = landingpad { ptr, i32 }
          cleanup
  br label %7750

903:                                              ; preds = %768
  %904 = landingpad { ptr, i32 }
          cleanup
  br label %7749

905:                                              ; preds = %769
  %906 = landingpad { ptr, i32 }
          cleanup
  br label %7748

907:                                              ; preds = %770
  %908 = landingpad { ptr, i32 }
          cleanup
  br label %7747

909:                                              ; preds = %771
  %910 = landingpad { ptr, i32 }
          cleanup
  br label %7746

911:                                              ; preds = %772
  %912 = landingpad { ptr, i32 }
          cleanup
  br label %7745

913:                                              ; preds = %773
  %914 = landingpad { ptr, i32 }
          cleanup
  br label %7744

915:                                              ; preds = %774
  %916 = landingpad { ptr, i32 }
          cleanup
  br label %7743

917:                                              ; preds = %775
  %918 = landingpad { ptr, i32 }
          cleanup
  br label %7742

919:                                              ; preds = %776
  %920 = landingpad { ptr, i32 }
          cleanup
  br label %7741

921:                                              ; preds = %777
  %922 = landingpad { ptr, i32 }
          cleanup
  br label %7740

923:                                              ; preds = %778
  %924 = landingpad { ptr, i32 }
          cleanup
  br label %7739

925:                                              ; preds = %779
  %926 = landingpad { ptr, i32 }
          cleanup
  br label %7738

927:                                              ; preds = %780
  %928 = landingpad { ptr, i32 }
          cleanup
  br label %7737

929:                                              ; preds = %781
  %930 = landingpad { ptr, i32 }
          cleanup
  br label %7736

931:                                              ; preds = %782
  %932 = landingpad { ptr, i32 }
          cleanup
  br label %7735

933:                                              ; preds = %783
  %934 = landingpad { ptr, i32 }
          cleanup
  br label %7734

935:                                              ; preds = %784
  %936 = landingpad { ptr, i32 }
          cleanup
  br label %7733

937:                                              ; preds = %785
  %938 = landingpad { ptr, i32 }
          cleanup
  br label %7732

939:                                              ; preds = %786
  %940 = landingpad { ptr, i32 }
          cleanup
  br label %7731

941:                                              ; preds = %787
  %942 = landingpad { ptr, i32 }
          cleanup
  br label %7730

943:                                              ; preds = %788
  %944 = landingpad { ptr, i32 }
          cleanup
  br label %7729

.loopexit:                                        ; preds = %4772, %4794
  %lpad.loopexit = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit:                      ; preds = %4738, %4721, %.preheader1276
  %lpad.loopexit1277 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit:    ; preds = %.preheader1280, %4690
  %lpad.loopexit1281 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %5896, %5868
  %lpad.loopexit1284 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.preheader1287, %5831, %5848
  %lpad.loopexit1288 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %5789, %5777
  %lpad.loopexit1291 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.preheader1294, %5752, %5764
  %lpad.loopexit1295 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %7728, %7701
  %lpad.loopexit1298 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %1862
  %lpad.loopexit1303 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %1856, %1838, %.preheader1305
  %lpad.loopexit1306 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.preheader1309, %2321
  %lpad.loopexit1310 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %2252, %.preheader1312
  %lpad.loopexit1313 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.preheader1316, %2189, %2208
  %lpad.loopexit1317 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %2146, %.preheader1319
  %lpad.loopexit1320 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.preheader1323, %2079
  %lpad.loopexit1324 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %2489, %2478
  %lpad.loopexit1327 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %2450, %2462
  %lpad.loopexit1331 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %2436, %2419, %.preheader1333
  %lpad.loopexit1334 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.preheader1337, %2377, %2394
  %lpad.loopexit1338 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %2723, %.preheader1340
  %lpad.loopexit1341 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %2685, %2702
  %lpad.loopexit1345 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %2667, %2648
  %lpad.loopexit1348 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.preheader1351, %2607
  %lpad.loopexit1352 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %2550, %.preheader1354
  %lpad.loopexit1355 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.preheader1358, %3775
  %lpad.loopexit1359 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %3722, %.preheader1361
  %lpad.loopexit1362 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %3672, %3694
  %lpad.loopexit1366 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %3651, %3634
  %lpad.loopexit1369 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %3578, %3595
  %lpad.loopexit1373 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %3558, %3541, %.preheader1375
  %lpad.loopexit1376 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %3505, %3522
  %lpad.loopexit1380 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %3482, %3465, %.preheader1382
  %lpad.loopexit1383 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %2950, %2961
  %lpad.loopexit1387 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %2936, %2919, %.preheader1389
  %lpad.loopexit1390 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %3011, %3022
  %lpad.loopexit1394 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %2997, %2980, %.preheader1396
  %lpad.loopexit1397 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %3071, %3082
  %lpad.loopexit1401 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %3058, %3041, %.preheader1403
  %lpad.loopexit1404 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.preheader1407, %3416
  %lpad.loopexit1408 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %3395, %3378
  %lpad.loopexit1411 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.preheader1414, %3349, %3361
  %lpad.loopexit1415 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %3334, %3322
  %lpad.loopexit1418 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.preheader1421, %3280, %3297
  %lpad.loopexit1422 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %3261, %3242
  %lpad.loopexit1425 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.preheader1428, %3195
  %lpad.loopexit1429 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %3138, %.preheader1431
  %lpad.loopexit1432 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.preheader1435, %3097, %3109
  %lpad.loopexit1436 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %2893, %2876, %.preheader1438
  %lpad.loopexit1439 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.preheader1442, %2773, %2790
  %lpad.loopexit1443 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %5072, %.preheader1445
  %lpad.loopexit1446 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.preheader1449, %5022
  %lpad.loopexit1450 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %4965, %.preheader1452
  %lpad.loopexit1453 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %3906, %3922
  %lpad.loopexit1457 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %3956, %3940
  %lpad.loopexit1460 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %3974, %3990
  %lpad.loopexit1464 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %4038, %4017
  %lpad.loopexit1467 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.preheader1470, %4084
  %lpad.loopexit1471 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1475: ; preds = %4156, %.preheader1473
  %lpad.loopexit1478 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1483: ; preds = %.preheader1481, %4228
  %lpad.loopexit1486 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1490: ; preds = %4322, %.preheader1488
  %lpad.loopexit1493 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1498: ; preds = %.preheader1496, %4389
  %lpad.loopexit1501 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1505: ; preds = %4442, %.preheader1503
  %lpad.loopexit1508 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1513: ; preds = %4541, %4554
  %lpad.loopexit1516 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1520: ; preds = %4503, %.preheader1518
  %lpad.loopexit1523 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1528: ; preds = %4915, %4931
  %lpad.loopexit1531 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1535: ; preds = %4894, %4878
  %lpad.loopexit1538 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1543: ; preds = %.preheader1541, %4843, %4855
  %lpad.loopexit1546 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550: ; preds = %4809, %4802, %4797, %4795, %4777, %4770, %4764, %4762, %4747, %4744, %4742, %4740, %4726, %4716, %4710, %4706, %4701, %4698, %4685, %4681, %4676, %4674, %4671, %4666, %4664, %4658, %4656, %.lr.ph2203
  %lpad.loopexit1553 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1558: ; preds = %.preheader1556, %4619, %4641
  %lpad.loopexit1561 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1565: ; preds = %4592, %4575, %.preheader1563
  %lpad.loopexit1568 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1573: ; preds = %.preheader1571, %3851, %3868
  %lpad.loopexit1576 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1580: ; preds = %5301, %.preheader1578
  %lpad.loopexit1583 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1588: ; preds = %5265, %5277
  %lpad.loopexit1591 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1595: ; preds = %5231, %5214, %.preheader1593
  %lpad.loopexit1598 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1603: ; preds = %.preheader1601, %5387
  %lpad.loopexit1606 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1610: ; preds = %5460, %.preheader1608
  %lpad.loopexit1613 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1618: ; preds = %.preheader1616, %5560
  %lpad.loopexit1621 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1625: ; preds = %5610, %.preheader1623
  %lpad.loopexit1628 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1633: ; preds = %.preheader1631, %5655
  %lpad.loopexit1636 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1640: ; preds = %6007, %5996
  %lpad.loopexit1643 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1648: ; preds = %.preheader1646, %5965, %5977
  %lpad.loopexit1651 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1655: ; preds = %5944, %5932, %.preheader1653
  %lpad.loopexit1658 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1662: ; preds = %.lr.ph, %5741, %5747, %5757, %5765, %5769, %5775, %5782, %5790, %5794, %5807, %5818, %5820, %5826, %5836, %5860, %5866, %5873, %5897, %5899
  %lpad.loopexit1665 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1669: ; preds = %5722, %5705, %.preheader1667
  %lpad.loopexit1672 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1677: ; preds = %.preheader1675, %5160, %5177
  %lpad.loopexit1680 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1684: ; preds = %5138, %5121, %.preheader1682
  %lpad.loopexit1687 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1692: ; preds = %.preheader1690, %7120
  %lpad.loopexit1695 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1699: ; preds = %7068, %.preheader1697
  %lpad.loopexit1702 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1707: ; preds = %.preheader1705, %7012
  %lpad.loopexit1710 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1714: ; preds = %6953, %.preheader1712
  %lpad.loopexit1717 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1722: ; preds = %.preheader1720, %6900
  %lpad.loopexit1725 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1729: ; preds = %6847, %.preheader1727
  %lpad.loopexit1732 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1737: ; preds = %.preheader1735, %6793
  %lpad.loopexit1740 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1744: ; preds = %6768, %6749
  %lpad.loopexit1747 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1752: ; preds = %.preheader1750, %6702
  %lpad.loopexit1755 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1759: ; preds = %6645, %.preheader1757
  %lpad.loopexit1762 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1767: ; preds = %.preheader1765, %6596, %6615
  %lpad.loopexit1770 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1774: ; preds = %6553, %.preheader1772
  %lpad.loopexit1777 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1782: ; preds = %.preheader1780, %6508
  %lpad.loopexit1785 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1789: ; preds = %6464, %.preheader1787
  %lpad.loopexit1792 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1797: ; preds = %.preheader1795, %6432
  %lpad.loopexit1800 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1804: ; preds = %6302, %.preheader1802
  %lpad.loopexit1807 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1812: ; preds = %.preheader1810, %6249
  %lpad.loopexit1815 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1819: ; preds = %6195, %.preheader1817
  %lpad.loopexit1822 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1827: ; preds = %6151, %6170
  %lpad.loopexit1830 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1834: ; preds = %6104, %.preheader1832
  %lpad.loopexit1837 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1842: ; preds = %.preheader1840, %6047
  %lpad.loopexit1845 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1849: ; preds = %7650, %.preheader1847
  %lpad.loopexit1852 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1857: ; preds = %.preheader1855, %7606
  %lpad.loopexit1860 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1864: ; preds = %7547, %.preheader1862
  %lpad.loopexit1867 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1872: ; preds = %.preheader1870, %7490
  %lpad.loopexit1875 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1879: ; preds = %7439, %.preheader1877
  %lpad.loopexit1882 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1887: ; preds = %.preheader1885, %7401
  %lpad.loopexit1890 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1894: ; preds = %7322, %.preheader1892
  %lpad.loopexit1897 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1902: ; preds = %.preheader1900, %7275
  %lpad.loopexit1905 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1909: ; preds = %7235, %.preheader1907
  %lpad.loopexit1912 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1917: ; preds = %.preheader1915, %1990, %2011
  %lpad.loopexit1920 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1924: ; preds = %1902, %1885, %.preheader1922
  %lpad.loopexit1927 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1932: ; preds = %.preheader1930, %1786
  %lpad.loopexit1935 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939: ; preds = %.invoke2324, %.invoke2317, %.invoke2316, %.invoke2315, %.invoke2314, %.invoke2313, %.invoke2312, %.invoke2311, %.invoke2310, %.invoke2309, %.invoke2308, %.invoke2307, %.invoke2306, %.invoke2305, %.invoke2304, %.invoke2303, %.invoke2302, %.invoke, %7699, %7693, %7679, %7677, %7668, %7645, %7641, %7630, %7629, %7626, %7601, %7594, %7587, %7584, %7542, %7518, %7515, %7485, %7481, %7462, %7459, %7434, %7430, %7422, %7412, %7409, %7396, %7392, %7378, %7357, %7352, %7350, %7343, %7340, %7317, %7313, %7308, %7301, %7298, %7270, %7266, %7258, %7251, %7248, %7230, %7226, %7209, %7207, %7205, %7203, %7201, %7199, %7180, %7178, %7176, %7174, %7172, %7170, %7167, %7165, %7157, %7146, %7115, %7111, %7096, %7093, %7063, %7059, %7040, %7037, %7007, %7003, %6984, %6981, %6948, %6944, %6926, %6923, %6895, %6891, %6878, %6875, %6842, %6838, %6822, %6819, %6788, %6784, %6754, %6747, %6741, %6739, %6737, %6731, %6728, %6697, %6690, %6677, %6674, %6640, %6618, %6616, %6601, %6591, %6585, %6580, %6579, %6576, %6548, %6544, %6531, %6528, %6503, %6499, %6491, %6487, %6484, %6459, %6455, %6447, %6443, %6440, %6427, %6423, %6399, %6353, %6338, %6328, %6325, %6297, %6293, %6280, %6277, %6244, %6240, %6224, %6221, %6190, %6186, %6156, %6149, %6143, %6141, %6139, %6133, %6130, %6099, %6092, %6079, %6076, %6042, %6020, %6015, %6013, %6012, %5994, %5988, %5986, %5984, %5982, %5980, %5978, %5970, %5960, %5954, %5951, %5949, %5947, %5945, %5937, %5927, %5921, %5918, %5914, %._crit_edge, %5723, %5710, %5700, %5694, %5692, %5681, %5650, %5646, %5623, %5605, %5601, %5593, %5591, %5583, %5581, %5568, %5555, %5551, %5527, %5525, %5494, %5481, %5474, %5468, %5455, %5451, %5414, %5412, %5395, %5382, %5378, %5341, %5339, %5322, %5296, %5292, %5284, %5270, %5263, %5257, %5255, %5251, %5244, %5241, %5239, %5219, %5209, %5203, %5201, %5189, %5185, %5182, %5180, %5178, %5165, %5155, %5149, %5147, %5139, %5126, %5116, %5110, %5108, %5101, %5090, %5067, %5063, %5052, %5051, %5048, %5017, %5010, %4997, %4994, %4960, %4935, %4934, %4932, %4913, %4907, %4905, %4903, %4896, %4876, %4870, %4868, %4856, %4848, %4838, %4832, %4830, %4825, %4824, %4820, %4703, %4653, %._crit_edge2204, %4647, %4644, %4642, %4624, %4614, %4608, %4606, %4593, %4580, %4570, %4564, %4562, %4555, %4539, %4533, %4531, %4528, %4527, %4524, %4498, %4494, %4480, %4476, %4474, %4468, %4437, %4433, %4416, %4410, %4384, %4380, %4346, %4344, %4338, %4317, %4313, %4282, %4271, %4260, %4255, %4249, %4223, %4219, %4185, %4183, %4177, %4151, %4147, %4113, %4111, %4105, %4079, %4075, %4041, %4039, %4015, %4009, %4007, %3972, %3966, %3964, %3962, %3938, %3932, %3930, %3928, %3904, %3898, %3896, %3892, %3890, %3880, %3876, %3873, %3871, %3869, %3856, %3846, %3840, %3838, %3829, %3827, %3824, %3822, %3820, %3818, %3816, %3814, %3812, %3810, %3808, %3805, %3804, %3796, %3793, %3770, %3766, %3755, %3754, %3751, %3717, %3713, %3677, %3670, %3664, %3662, %3639, %3632, %3626, %3624, %3622, %3620, %3618, %3609, %3607, %3604, %3602, %3596, %3583, %3576, %3570, %3567, %3559, %3546, %3536, %3530, %3528, %3510, %3503, %3497, %3494, %3483, %3470, %3460, %3454, %3452, %3445, %3438, %3435, %3432, %3411, %3407, %3396, %3383, %3376, %3370, %3367, %3354, %3344, %3338, %3335, %3327, %3320, %3314, %3312, %3303, %3285, %3275, %3269, %3267, %3247, %3240, %3234, %3232, %3230, %3228, %3226, %3224, %3218, %3215, %3190, %3183, %3176, %3173, %3133, %3102, %3092, %3086, %3083, %3069, %3063, %3059, %3046, %3036, %3030, %3028, %3009, %3003, %2998, %2985, %2975, %2969, %2967, %2948, %2942, %2937, %2924, %2914, %2908, %2906, %2894, %2881, %2871, %2865, %2863, %2844, %2835, %2816, %2807, %2796, %2793, %2791, %2778, %2768, %2762, %2760, %2753, %2752, %2750, %2739, %2718, %2714, %2703, %2690, %2683, %2677, %2675, %2673, %2653, %2646, %2640, %2638, %2636, %2630, %2627, %2602, %2595, %2588, %2585, %2545, %2518, %2516, %2512, %2509, %2508, %2476, %2470, %2468, %2463, %2455, %2448, %2442, %2440, %2437, %2424, %2414, %2408, %2406, %2395, %2382, %2372, %2366, %2364, %2357, %2347, %2316, %2312, %2297, %2294, %2247, %2194, %2184, %2178, %2173, %2172, %2169, %2141, %2137, %2124, %2121, %2074, %2035, %2034, %2024, %2023, %2019, %2016, %2014, %2012, %1995, %1985, %1979, %1977, %1952, %1949, %1947, %1945, %1924, %1922, %1916, %1890, %1880, %1874, %1872, %1866, %1859, %1857, %1843, %1833, %1827, %1825, %1823, %1818, %1813, %1811, %1809, %1808, %1806, %1804, %1802, %1799, %1781, %1777, %1770, %1768, %1766, %1765
  %lpad.loopexit1942 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1947: ; preds = %1738, %1750
  %lpad.loopexit1950 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1954: ; preds = %1672, %1646
  %lpad.loopexit1957 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1961: ; preds = %1636, %1638, %1644, %1651, %1673, %1677, %1679, %1683, %1684, %1689, %1692
  %lpad.loopexit1964 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1968: ; preds = %1606, %1594
  %lpad.loopexit1971 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1976: ; preds = %1567, %1579
  %lpad.loopexit1979 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1983: ; preds = %1617, %1611, %1607, %1599, %1592, %1586, %1584, %1580, %1572, %1565, %1559, %1557
  %lpad.loopexit1986 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1991: ; preds = %.preheader1989, %1528
  %lpad.loopexit1994 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1998: ; preds = %1491, %.preheader1996
  %lpad.loopexit2001 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2006: ; preds = %.preheader2004, %1456
  %lpad.loopexit2009 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2013: ; preds = %1416, %.preheader2011
  %lpad.loopexit2016 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2021: ; preds = %1382, %1396
  %lpad.loopexit2024 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2028: ; preds = %1354, %.preheader2026
  %lpad.loopexit2031 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2036: ; preds = %1326, %1340
  %lpad.loopexit2039 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2043: ; preds = %1292, %.preheader2041
  %lpad.loopexit2046 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2051: ; preds = %.preheader2049, %1216
  %lpad.loopexit2054 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2058: ; preds = %1196, %1172
  %lpad.loopexit2061 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2066: ; preds = %.preheader2064, %1143
  %lpad.loopexit2069 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2073: ; preds = %1129, %1105
  %lpad.loopexit2076 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2081: ; preds = %1061, %1066
  %lpad.loopexit2084 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2088: ; preds = %1040, %1028
  %lpad.loopexit2091 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2096: ; preds = %1003, %1015
  %lpad.loopexit2099 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2103: ; preds = %984, %972
  %lpad.loopexit2106 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2111: ; preds = %879, %959
  %lpad.loopexit2114 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113: ; preds = %.invoke2319, %.invoke2318, %789, %791, %793, %795, %797, %799, %801, %803, %805, %807, %809, %811, %813, %815, %817, %819, %821, %823, %825, %827, %829, %831, %833, %835, %837, %845, %853, %854, %860, %862, %864, %867, %875, %884, %960, %962, %964, %970, %977, %985, %991, %993, %995, %1001, %1008, %1016, %1018, %1020, %1026, %1033, %1059, %1089, %1092, %1103, %1110, %1138, %1156, %1159, %1170, %1177, %1211, %1239, %1242, %1243, %1248, %1250, %1263, %1265, %1287, %1310, %1313, %1314, %1316, %1318, %1324, %1331, %1349, %1367, %1370, %1371, %1374, %1380, %1387, %1411, %1439, %1442, %1451, %1471, %1474, %1486, %1511, %1514, %1523, %1543, %1549, %1551, %1616, %1618, %1620, %1682, %1724, %1726, %1728, %1730, %1736, %1743, %1751
  %lpad.loopexit.split-lp = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

945:                                              ; preds = %839
  %946 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %33) #6
  br label %.loopexit.split-lp

947:                                              ; preds = %842
  %948 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %34) #6
  br label %.loopexit.split-lp

949:                                              ; preds = %847
  %950 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %35) #6
  br label %.loopexit.split-lp

951:                                              ; preds = %850
  %952 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %36) #6
  br label %.loopexit.split-lp

953:                                              ; preds = %870
  %954 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %37) #6
  br label %.loopexit.split-lp

955:                                              ; preds = %873
  %956 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %38) #6
  br label %.loopexit.split-lp

957:                                              ; preds = %877
  %958 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %39) #6
  br label %.loopexit.split-lp

959:                                              ; preds = %881
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %877 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2111, !llvm.loop !11

960:                                              ; preds = %884
  %961 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 1)
          to label %962 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

962:                                              ; preds = %960
  %963 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %865, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %964 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

964:                                              ; preds = %962
  %965 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %868, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %966 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

966:                                              ; preds = %964
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %40) #6
  store i8 0, ptr %40, align 1, !tbaa !5
  %967 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %871, ptr noundef nonnull align 1 dereferenceable(1) %40)
          to label %968 unwind label %978

968:                                              ; preds = %966
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %40) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %41) #6
  store i8 1, ptr %41, align 1, !tbaa !5
  %969 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %41)
          to label %970 unwind label %980

970:                                              ; preds = %968
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %41) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2101 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

.preheader2101:                                   ; preds = %970, %984
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %42) #6
  store i8 0, ptr %42, align 1, !tbaa !5
  %971 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %42)
          to label %972 unwind label %982

972:                                              ; preds = %.preheader2101
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %42) #6
  %973 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %876)
          to label %974 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2103

974:                                              ; preds = %972
  %975 = load i8, ptr %973, align 1, !tbaa !5, !range !9, !noundef !10
  %976 = trunc nuw i8 %975 to i1
  br i1 %976, label %977, label %984

977:                                              ; preds = %974
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %985 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

978:                                              ; preds = %966
  %979 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %40) #6
  br label %.loopexit.split-lp

980:                                              ; preds = %968
  %981 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %41) #6
  br label %.loopexit.split-lp

982:                                              ; preds = %.preheader2101
  %983 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %42) #6
  br label %.loopexit.split-lp

984:                                              ; preds = %974
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2101 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2103, !llvm.loop !13

985:                                              ; preds = %977
  %986 = getelementptr inbounds i8, ptr %0, i64 1288
  %987 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %986)
          to label %.invoke2318 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

.invoke2318:                                      ; preds = %985
  %988 = load i8, ptr %987, align 1, !tbaa !5, !range !9, !noundef !10
  %989 = trunc nuw i8 %988 to i1
  %. = select i1 %989, i32 0, i32 16
  %990 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef %.)
          to label %991 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

991:                                              ; preds = %.invoke2318
  %992 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 2)
          to label %993 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

993:                                              ; preds = %991
  %994 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %865, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %995 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

995:                                              ; preds = %993
  %996 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %868, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %997 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

997:                                              ; preds = %995
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %43) #6
  store i8 0, ptr %43, align 1, !tbaa !5
  %998 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %871, ptr noundef nonnull align 1 dereferenceable(1) %43)
          to label %999 unwind label %1009

999:                                              ; preds = %997
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %43) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %44) #6
  store i8 1, ptr %44, align 1, !tbaa !5
  %1000 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %44)
          to label %1001 unwind label %1011

1001:                                             ; preds = %999
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %44) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2094 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

.preheader2094:                                   ; preds = %1001, %1015
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %45) #6
  store i8 0, ptr %45, align 1, !tbaa !5
  %1002 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %45)
          to label %1003 unwind label %1013

1003:                                             ; preds = %.preheader2094
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %45) #6
  %1004 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %876)
          to label %1005 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2096

1005:                                             ; preds = %1003
  %1006 = load i8, ptr %1004, align 1, !tbaa !5, !range !9, !noundef !10
  %1007 = trunc nuw i8 %1006 to i1
  br i1 %1007, label %1008, label %1015

1008:                                             ; preds = %1005
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1016 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1009:                                             ; preds = %997
  %1010 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %43) #6
  br label %.loopexit.split-lp

1011:                                             ; preds = %999
  %1012 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %44) #6
  br label %.loopexit.split-lp

1013:                                             ; preds = %.preheader2094
  %1014 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %45) #6
  br label %.loopexit.split-lp

1015:                                             ; preds = %1005
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2094 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2096, !llvm.loop !14

1016:                                             ; preds = %1008
  %1017 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 4)
          to label %1018 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1018:                                             ; preds = %1016
  %1019 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %865, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %1020 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1020:                                             ; preds = %1018
  %1021 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %868, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %1022 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1022:                                             ; preds = %1020
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %46) #6
  store i8 0, ptr %46, align 1, !tbaa !5
  %1023 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %871, ptr noundef nonnull align 1 dereferenceable(1) %46)
          to label %1024 unwind label %1034

1024:                                             ; preds = %1022
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %46) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %47) #6
  store i8 1, ptr %47, align 1, !tbaa !5
  %1025 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %47)
          to label %1026 unwind label %1036

1026:                                             ; preds = %1024
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %47) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2086 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

.preheader2086:                                   ; preds = %1026, %1040
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %48) #6
  store i8 0, ptr %48, align 1, !tbaa !5
  %1027 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %48)
          to label %1028 unwind label %1038

1028:                                             ; preds = %.preheader2086
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %48) #6
  %1029 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %876)
          to label %1030 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2088

1030:                                             ; preds = %1028
  %1031 = load i8, ptr %1029, align 1, !tbaa !5, !range !9, !noundef !10
  %1032 = trunc nuw i8 %1031 to i1
  br i1 %1032, label %1033, label %1040

1033:                                             ; preds = %1030
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1041 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1034:                                             ; preds = %1022
  %1035 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %46) #6
  br label %.loopexit.split-lp

1036:                                             ; preds = %1024
  %1037 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %47) #6
  br label %.loopexit.split-lp

1038:                                             ; preds = %.preheader2086
  %1039 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %48) #6
  br label %.loopexit.split-lp

1040:                                             ; preds = %1030
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2086 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2088, !llvm.loop !15

1041:                                             ; preds = %1033
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %49) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %49, i32 noundef 8)
          to label %1042 unwind label %1067

1042:                                             ; preds = %1041
  %1043 = getelementptr inbounds i8, ptr %0, i64 4200
  %1044 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1043, ptr noundef nonnull align 8 dereferenceable(24) %49)
          to label %1045 unwind label %1069

1045:                                             ; preds = %1042
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %49) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %49) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %50) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %50, i32 noundef 0)
          to label %1046 unwind label %1072

1046:                                             ; preds = %1045
  %1047 = getelementptr inbounds i8, ptr %0, i64 4376
  %1048 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1047, ptr noundef nonnull align 8 dereferenceable(24) %50)
          to label %1049 unwind label %1074

1049:                                             ; preds = %1046
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %50) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %50) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %51) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %51, i32 noundef 2)
          to label %1050 unwind label %1077

1050:                                             ; preds = %1049
  %1051 = getelementptr inbounds i8, ptr %0, i64 4024
  %1052 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1051, ptr noundef nonnull align 8 dereferenceable(24) %51)
          to label %1053 unwind label %1079

1053:                                             ; preds = %1050
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %51) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %51) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %52) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %52, i32 noundef 2)
          to label %1054 unwind label %1082

1054:                                             ; preds = %1053
  %1055 = getelementptr inbounds i8, ptr %0, i64 3656
  %1056 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1055, ptr noundef nonnull align 8 dereferenceable(24) %52)
          to label %1057 unwind label %1084

1057:                                             ; preds = %1054
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %52) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %52) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %53) #6
  store i8 1, ptr %53, align 1, !tbaa !5
  %1058 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %53)
          to label %1059 unwind label %1087

1059:                                             ; preds = %1057
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %53) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2079 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

.preheader2079:                                   ; preds = %1059
  %1060 = getelementptr inbounds i8, ptr %0, i64 1640
  br label %1061

1061:                                             ; preds = %.preheader2079, %1066
  %1062 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1060)
          to label %1063 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2081

1063:                                             ; preds = %1061
  %1064 = load i8, ptr %1062, align 1, !tbaa !5, !range !9, !noundef !10
  %1065 = trunc nuw i8 %1064 to i1
  br i1 %1065, label %1089, label %1066

1066:                                             ; preds = %1063
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1061 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2081, !llvm.loop !16

1067:                                             ; preds = %1041
  %1068 = landingpad { ptr, i32 }
          cleanup
  br label %1071

1069:                                             ; preds = %1042
  %1070 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %49) #6
  br label %1071

1071:                                             ; preds = %1069, %1067
  %.pn = phi { ptr, i32 } [ %1070, %1069 ], [ %1068, %1067 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %49) #6
  br label %.loopexit.split-lp

1072:                                             ; preds = %1045
  %1073 = landingpad { ptr, i32 }
          cleanup
  br label %1076

1074:                                             ; preds = %1046
  %1075 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %50) #6
  br label %1076

1076:                                             ; preds = %1074, %1072
  %.pn519 = phi { ptr, i32 } [ %1075, %1074 ], [ %1073, %1072 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %50) #6
  br label %.loopexit.split-lp

1077:                                             ; preds = %1049
  %1078 = landingpad { ptr, i32 }
          cleanup
  br label %1081

1079:                                             ; preds = %1050
  %1080 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %51) #6
  br label %1081

1081:                                             ; preds = %1079, %1077
  %.pn521 = phi { ptr, i32 } [ %1080, %1079 ], [ %1078, %1077 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %51) #6
  br label %.loopexit.split-lp

1082:                                             ; preds = %1053
  %1083 = landingpad { ptr, i32 }
          cleanup
  br label %1086

1084:                                             ; preds = %1054
  %1085 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %52) #6
  br label %1086

1086:                                             ; preds = %1084, %1082
  %.pn523 = phi { ptr, i32 } [ %1085, %1084 ], [ %1083, %1082 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %52) #6
  br label %.loopexit.split-lp

1087:                                             ; preds = %1057
  %1088 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %53) #6
  br label %.loopexit.split-lp

1089:                                             ; preds = %1063
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1090 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1090:                                             ; preds = %1089
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %54) #6
  store i8 0, ptr %54, align 1, !tbaa !5
  %1091 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %54)
          to label %1092 unwind label %1111

1092:                                             ; preds = %1090
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %54) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1093 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1093:                                             ; preds = %1092
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %55) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %55, i32 noundef 10)
          to label %1094 unwind label %1113

1094:                                             ; preds = %1093
  %1095 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %865, ptr noundef nonnull align 8 dereferenceable(24) %55)
          to label %1096 unwind label %1115

1096:                                             ; preds = %1094
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %55) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %55) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %56) #6
  invoke void @_ZN5sc_dt6sc_intILi16EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %56, i32 noundef 100)
          to label %1097 unwind label %1118

1097:                                             ; preds = %1096
  %1098 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %868, ptr noundef nonnull align 8 dereferenceable(24) %56)
          to label %1099 unwind label %1120

1099:                                             ; preds = %1097
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %56) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %56) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %57) #6
  store i8 0, ptr %57, align 1, !tbaa !5
  %1100 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %871, ptr noundef nonnull align 1 dereferenceable(1) %57)
          to label %1101 unwind label %1123

1101:                                             ; preds = %1099
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %57) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %58) #6
  store i8 1, ptr %58, align 1, !tbaa !5
  %1102 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %58)
          to label %1103 unwind label %1125

1103:                                             ; preds = %1101
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %58) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2071 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

.preheader2071:                                   ; preds = %1103, %1129
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %59) #6
  store i8 0, ptr %59, align 1, !tbaa !5
  %1104 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %59)
          to label %1105 unwind label %1127

1105:                                             ; preds = %.preheader2071
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %59) #6
  %1106 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %876)
          to label %1107 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2073

1107:                                             ; preds = %1105
  %1108 = load i8, ptr %1106, align 1, !tbaa !5, !range !9, !noundef !10
  %1109 = trunc nuw i8 %1108 to i1
  br i1 %1109, label %1110, label %1129

1110:                                             ; preds = %1107
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1130 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1111:                                             ; preds = %1090
  %1112 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %54) #6
  br label %.loopexit.split-lp

1113:                                             ; preds = %1093
  %1114 = landingpad { ptr, i32 }
          cleanup
  br label %1117

1115:                                             ; preds = %1094
  %1116 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %55) #6
  br label %1117

1117:                                             ; preds = %1115, %1113
  %.pn525 = phi { ptr, i32 } [ %1116, %1115 ], [ %1114, %1113 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %55) #6
  br label %.loopexit.split-lp

1118:                                             ; preds = %1096
  %1119 = landingpad { ptr, i32 }
          cleanup
  br label %1122

1120:                                             ; preds = %1097
  %1121 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %56) #6
  br label %1122

1122:                                             ; preds = %1120, %1118
  %.pn527 = phi { ptr, i32 } [ %1121, %1120 ], [ %1119, %1118 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %56) #6
  br label %.loopexit.split-lp

1123:                                             ; preds = %1099
  %1124 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %57) #6
  br label %.loopexit.split-lp

1125:                                             ; preds = %1101
  %1126 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %58) #6
  br label %.loopexit.split-lp

1127:                                             ; preds = %.preheader2071
  %1128 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %59) #6
  br label %.loopexit.split-lp

1129:                                             ; preds = %1107
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2071 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2073, !llvm.loop !17

1130:                                             ; preds = %1110
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %60) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %60, i32 noundef 16)
          to label %1131 unwind label %1144

1131:                                             ; preds = %1130
  %1132 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1043, ptr noundef nonnull align 8 dereferenceable(24) %60)
          to label %1133 unwind label %1146

1133:                                             ; preds = %1131
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %60) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %60) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %61) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %61, i32 noundef 2)
          to label %1134 unwind label %1149

1134:                                             ; preds = %1133
  %1135 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1055, ptr noundef nonnull align 8 dereferenceable(24) %61)
          to label %1136 unwind label %1151

1136:                                             ; preds = %1134
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %61) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %61) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %62) #6
  store i8 1, ptr %62, align 1, !tbaa !5
  %1137 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %62)
          to label %1138 unwind label %1154

1138:                                             ; preds = %1136
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %62) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2064 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

.preheader2064:                                   ; preds = %1138, %1143
  %1139 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1060)
          to label %1140 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2066

1140:                                             ; preds = %.preheader2064
  %1141 = load i8, ptr %1139, align 1, !tbaa !5, !range !9, !noundef !10
  %1142 = trunc nuw i8 %1141 to i1
  br i1 %1142, label %1156, label %1143

1143:                                             ; preds = %1140
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2064 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2066, !llvm.loop !18

1144:                                             ; preds = %1130
  %1145 = landingpad { ptr, i32 }
          cleanup
  br label %1148

1146:                                             ; preds = %1131
  %1147 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %60) #6
  br label %1148

1148:                                             ; preds = %1146, %1144
  %.pn529 = phi { ptr, i32 } [ %1147, %1146 ], [ %1145, %1144 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %60) #6
  br label %.loopexit.split-lp

1149:                                             ; preds = %1133
  %1150 = landingpad { ptr, i32 }
          cleanup
  br label %1153

1151:                                             ; preds = %1134
  %1152 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %61) #6
  br label %1153

1153:                                             ; preds = %1151, %1149
  %.pn531 = phi { ptr, i32 } [ %1152, %1151 ], [ %1150, %1149 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %61) #6
  br label %.loopexit.split-lp

1154:                                             ; preds = %1136
  %1155 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %62) #6
  br label %.loopexit.split-lp

1156:                                             ; preds = %1140
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1157 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1157:                                             ; preds = %1156
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %63) #6
  store i8 0, ptr %63, align 1, !tbaa !5
  %1158 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %63)
          to label %1159 unwind label %1178

1159:                                             ; preds = %1157
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %63) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1160 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1160:                                             ; preds = %1159
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %64) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %64, i32 noundef 18)
          to label %1161 unwind label %1180

1161:                                             ; preds = %1160
  %1162 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %865, ptr noundef nonnull align 8 dereferenceable(24) %64)
          to label %1163 unwind label %1182

1163:                                             ; preds = %1161
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %64) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %64) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %65) #6
  invoke void @_ZN5sc_dt6sc_intILi16EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %65, i32 noundef 100)
          to label %1164 unwind label %1185

1164:                                             ; preds = %1163
  %1165 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %868, ptr noundef nonnull align 8 dereferenceable(24) %65)
          to label %1166 unwind label %1187

1166:                                             ; preds = %1164
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %65) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %65) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %66) #6
  store i8 0, ptr %66, align 1, !tbaa !5
  %1167 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %871, ptr noundef nonnull align 1 dereferenceable(1) %66)
          to label %1168 unwind label %1190

1168:                                             ; preds = %1166
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %66) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %67) #6
  store i8 1, ptr %67, align 1, !tbaa !5
  %1169 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %67)
          to label %1170 unwind label %1192

1170:                                             ; preds = %1168
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %67) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2056 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

.preheader2056:                                   ; preds = %1170, %1196
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %68) #6
  store i8 0, ptr %68, align 1, !tbaa !5
  %1171 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %68)
          to label %1172 unwind label %1194

1172:                                             ; preds = %.preheader2056
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %68) #6
  %1173 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %876)
          to label %1174 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2058

1174:                                             ; preds = %1172
  %1175 = load i8, ptr %1173, align 1, !tbaa !5, !range !9, !noundef !10
  %1176 = trunc nuw i8 %1175 to i1
  br i1 %1176, label %1177, label %1196

1177:                                             ; preds = %1174
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1197 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1178:                                             ; preds = %1157
  %1179 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %63) #6
  br label %.loopexit.split-lp

1180:                                             ; preds = %1160
  %1181 = landingpad { ptr, i32 }
          cleanup
  br label %1184

1182:                                             ; preds = %1161
  %1183 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %64) #6
  br label %1184

1184:                                             ; preds = %1182, %1180
  %.pn533 = phi { ptr, i32 } [ %1183, %1182 ], [ %1181, %1180 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %64) #6
  br label %.loopexit.split-lp

1185:                                             ; preds = %1163
  %1186 = landingpad { ptr, i32 }
          cleanup
  br label %1189

1187:                                             ; preds = %1164
  %1188 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %65) #6
  br label %1189

1189:                                             ; preds = %1187, %1185
  %.pn535 = phi { ptr, i32 } [ %1188, %1187 ], [ %1186, %1185 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %65) #6
  br label %.loopexit.split-lp

1190:                                             ; preds = %1166
  %1191 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %66) #6
  br label %.loopexit.split-lp

1192:                                             ; preds = %1168
  %1193 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %67) #6
  br label %.loopexit.split-lp

1194:                                             ; preds = %.preheader2056
  %1195 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %68) #6
  br label %.loopexit.split-lp

1196:                                             ; preds = %1174
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2056 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2058, !llvm.loop !19

1197:                                             ; preds = %1177
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %69) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %69, i32 noundef 20)
          to label %1198 unwind label %1217

1198:                                             ; preds = %1197
  %1199 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1043, ptr noundef nonnull align 8 dereferenceable(24) %69)
          to label %1200 unwind label %1219

1200:                                             ; preds = %1198
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %69) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %69) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %70) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %70, i32 noundef 50)
          to label %1201 unwind label %1222

1201:                                             ; preds = %1200
  %1202 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1047, ptr noundef nonnull align 8 dereferenceable(24) %70)
          to label %1203 unwind label %1224

1203:                                             ; preds = %1201
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %70) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %70) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %71) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %71, i32 noundef 4)
          to label %1204 unwind label %1227

1204:                                             ; preds = %1203
  %1205 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1051, ptr noundef nonnull align 8 dereferenceable(24) %71)
          to label %1206 unwind label %1229

1206:                                             ; preds = %1204
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %71) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %71) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %72) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %72, i32 noundef 2)
          to label %1207 unwind label %1232

1207:                                             ; preds = %1206
  %1208 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1055, ptr noundef nonnull align 8 dereferenceable(24) %72)
          to label %1209 unwind label %1234

1209:                                             ; preds = %1207
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %72) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %72) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %73) #6
  store i8 1, ptr %73, align 1, !tbaa !5
  %1210 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %73)
          to label %1211 unwind label %1237

1211:                                             ; preds = %1209
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %73) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2049 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

.preheader2049:                                   ; preds = %1211, %1216
  %1212 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1060)
          to label %1213 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2051

1213:                                             ; preds = %.preheader2049
  %1214 = load i8, ptr %1212, align 1, !tbaa !5, !range !9, !noundef !10
  %1215 = trunc nuw i8 %1214 to i1
  br i1 %1215, label %1239, label %1216

1216:                                             ; preds = %1213
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2049 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2051, !llvm.loop !20

1217:                                             ; preds = %1197
  %1218 = landingpad { ptr, i32 }
          cleanup
  br label %1221

1219:                                             ; preds = %1198
  %1220 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %69) #6
  br label %1221

1221:                                             ; preds = %1219, %1217
  %.pn537 = phi { ptr, i32 } [ %1220, %1219 ], [ %1218, %1217 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %69) #6
  br label %.loopexit.split-lp

1222:                                             ; preds = %1200
  %1223 = landingpad { ptr, i32 }
          cleanup
  br label %1226

1224:                                             ; preds = %1201
  %1225 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %70) #6
  br label %1226

1226:                                             ; preds = %1224, %1222
  %.pn539 = phi { ptr, i32 } [ %1225, %1224 ], [ %1223, %1222 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %70) #6
  br label %.loopexit.split-lp

1227:                                             ; preds = %1203
  %1228 = landingpad { ptr, i32 }
          cleanup
  br label %1231

1229:                                             ; preds = %1204
  %1230 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %71) #6
  br label %1231

1231:                                             ; preds = %1229, %1227
  %.pn541 = phi { ptr, i32 } [ %1230, %1229 ], [ %1228, %1227 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %71) #6
  br label %.loopexit.split-lp

1232:                                             ; preds = %1206
  %1233 = landingpad { ptr, i32 }
          cleanup
  br label %1236

1234:                                             ; preds = %1207
  %1235 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %72) #6
  br label %1236

1236:                                             ; preds = %1234, %1232
  %.pn543 = phi { ptr, i32 } [ %1235, %1234 ], [ %1233, %1232 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %72) #6
  br label %.loopexit.split-lp

1237:                                             ; preds = %1209
  %1238 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %73) #6
  br label %.loopexit.split-lp

1239:                                             ; preds = %1213
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1240 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1240:                                             ; preds = %1239
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %74) #6
  store i8 0, ptr %74, align 1, !tbaa !5
  %1241 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %74)
          to label %1242 unwind label %1256

1242:                                             ; preds = %1240
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %74) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1243 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1243:                                             ; preds = %1242
  %1244 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %986)
          to label %1245 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1245:                                             ; preds = %1243
  %1246 = load i8, ptr %1244, align 1, !tbaa !5, !range !9, !noundef !10
  %1247 = trunc nuw i8 %1246 to i1
  br i1 %1247, label %1263, label %1248

1248:                                             ; preds = %1245
  %1249 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 37)
          to label %1250 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1250:                                             ; preds = %1248
  %1251 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %6, i32 noundef 53)
          to label %1252 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1252:                                             ; preds = %1250
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %75) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %75, i32 noundef 5)
          to label %1253 unwind label %1258

1253:                                             ; preds = %1252
  %1254 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1051, ptr noundef nonnull align 8 dereferenceable(24) %75)
          to label %1255 unwind label %1260

1255:                                             ; preds = %1253
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %75) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %75) #6
  br label %1276

1256:                                             ; preds = %1240
  %1257 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %74) #6
  br label %.loopexit.split-lp

1258:                                             ; preds = %1252
  %1259 = landingpad { ptr, i32 }
          cleanup
  br label %1262

1260:                                             ; preds = %1253
  %1261 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %75) #6
  br label %1262

1262:                                             ; preds = %1260, %1258
  %.pn547 = phi { ptr, i32 } [ %1261, %1260 ], [ %1259, %1258 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %75) #6
  br label %.loopexit.split-lp

1263:                                             ; preds = %1245
  %1264 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 35)
          to label %1265 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1265:                                             ; preds = %1263
  %1266 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %6, i32 noundef 51)
          to label %1267 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1267:                                             ; preds = %1265
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %76) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %76, i32 noundef 3)
          to label %1268 unwind label %1271

1268:                                             ; preds = %1267
  %1269 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1051, ptr noundef nonnull align 8 dereferenceable(24) %76)
          to label %1270 unwind label %1273

1270:                                             ; preds = %1268
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %76) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %76) #6
  br label %1276

1271:                                             ; preds = %1267
  %1272 = landingpad { ptr, i32 }
          cleanup
  br label %1275

1273:                                             ; preds = %1268
  %1274 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %76) #6
  br label %1275

1275:                                             ; preds = %1273, %1271
  %.pn545 = phi { ptr, i32 } [ %1274, %1273 ], [ %1272, %1271 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %76) #6
  br label %.loopexit.split-lp

1276:                                             ; preds = %1270, %1255
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %77) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %77, i32 noundef 0)
          to label %1277 unwind label %1293

1277:                                             ; preds = %1276
  %1278 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1047, ptr noundef nonnull align 8 dereferenceable(24) %77)
          to label %1279 unwind label %1295

1279:                                             ; preds = %1277
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %77) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %77) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %78) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %78, i32 noundef 32)
          to label %1280 unwind label %1298

1280:                                             ; preds = %1279
  %1281 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1043, ptr noundef nonnull align 8 dereferenceable(24) %78)
          to label %1282 unwind label %1300

1282:                                             ; preds = %1280
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %78) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %78) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %79) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %79, i32 noundef 2)
          to label %1283 unwind label %1303

1283:                                             ; preds = %1282
  %1284 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1055, ptr noundef nonnull align 8 dereferenceable(24) %79)
          to label %1285 unwind label %1305

1285:                                             ; preds = %1283
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %79) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %79) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %80) #6
  store i8 1, ptr %80, align 1, !tbaa !5
  %1286 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %80)
          to label %1287 unwind label %1308

1287:                                             ; preds = %1285
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %80) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2041 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

.preheader2041:                                   ; preds = %1287, %1292
  %1288 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1060)
          to label %1289 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2043

1289:                                             ; preds = %.preheader2041
  %1290 = load i8, ptr %1288, align 1, !tbaa !5, !range !9, !noundef !10
  %1291 = trunc nuw i8 %1290 to i1
  br i1 %1291, label %1310, label %1292

1292:                                             ; preds = %1289
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2041 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2043, !llvm.loop !21

1293:                                             ; preds = %1276
  %1294 = landingpad { ptr, i32 }
          cleanup
  br label %1297

1295:                                             ; preds = %1277
  %1296 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %77) #6
  br label %1297

1297:                                             ; preds = %1295, %1293
  %.pn549 = phi { ptr, i32 } [ %1296, %1295 ], [ %1294, %1293 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %77) #6
  br label %.loopexit.split-lp

1298:                                             ; preds = %1279
  %1299 = landingpad { ptr, i32 }
          cleanup
  br label %1302

1300:                                             ; preds = %1280
  %1301 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %78) #6
  br label %1302

1302:                                             ; preds = %1300, %1298
  %.pn551 = phi { ptr, i32 } [ %1301, %1300 ], [ %1299, %1298 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %78) #6
  br label %.loopexit.split-lp

1303:                                             ; preds = %1282
  %1304 = landingpad { ptr, i32 }
          cleanup
  br label %1307

1305:                                             ; preds = %1283
  %1306 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %79) #6
  br label %1307

1307:                                             ; preds = %1305, %1303
  %.pn553 = phi { ptr, i32 } [ %1306, %1305 ], [ %1304, %1303 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %79) #6
  br label %.loopexit.split-lp

1308:                                             ; preds = %1285
  %1309 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %80) #6
  br label %.loopexit.split-lp

1310:                                             ; preds = %1289
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1311 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1311:                                             ; preds = %1310
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %81) #6
  store i8 0, ptr %81, align 1, !tbaa !5
  %1312 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %81)
          to label %1313 unwind label %1332

1313:                                             ; preds = %1311
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %81) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1314 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1314:                                             ; preds = %1313
  %1315 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef 30)
          to label %1316 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1316:                                             ; preds = %1314
  %1317 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %865, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %1318 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1318:                                             ; preds = %1316
  %1319 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %868, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %1320 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1320:                                             ; preds = %1318
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %82) #6
  store i8 0, ptr %82, align 1, !tbaa !5
  %1321 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %871, ptr noundef nonnull align 1 dereferenceable(1) %82)
          to label %1322 unwind label %1334

1322:                                             ; preds = %1320
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %82) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %83) #6
  store i8 1, ptr %83, align 1, !tbaa !5
  %1323 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %83)
          to label %1324 unwind label %1336

1324:                                             ; preds = %1322
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %83) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2034 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

.preheader2034:                                   ; preds = %1324, %1340
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %84) #6
  store i8 0, ptr %84, align 1, !tbaa !5
  %1325 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %84)
          to label %1326 unwind label %1338

1326:                                             ; preds = %.preheader2034
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %84) #6
  %1327 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %876)
          to label %1328 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2036

1328:                                             ; preds = %1326
  %1329 = load i8, ptr %1327, align 1, !tbaa !5, !range !9, !noundef !10
  %1330 = trunc nuw i8 %1329 to i1
  br i1 %1330, label %1331, label %1340

1331:                                             ; preds = %1328
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1341 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1332:                                             ; preds = %1311
  %1333 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %81) #6
  br label %.loopexit.split-lp

1334:                                             ; preds = %1320
  %1335 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %82) #6
  br label %.loopexit.split-lp

1336:                                             ; preds = %1322
  %1337 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %83) #6
  br label %.loopexit.split-lp

1338:                                             ; preds = %.preheader2034
  %1339 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %84) #6
  br label %.loopexit.split-lp

1340:                                             ; preds = %1328
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2034 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2036, !llvm.loop !22

1341:                                             ; preds = %1331
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %85) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %85, i32 noundef 48)
          to label %1342 unwind label %1355

1342:                                             ; preds = %1341
  %1343 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1043, ptr noundef nonnull align 8 dereferenceable(24) %85)
          to label %1344 unwind label %1357

1344:                                             ; preds = %1342
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %85) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %85) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %86) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %86, i32 noundef 2)
          to label %1345 unwind label %1360

1345:                                             ; preds = %1344
  %1346 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1055, ptr noundef nonnull align 8 dereferenceable(24) %86)
          to label %1347 unwind label %1362

1347:                                             ; preds = %1345
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %86) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %86) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %87) #6
  store i8 1, ptr %87, align 1, !tbaa !5
  %1348 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %87)
          to label %1349 unwind label %1365

1349:                                             ; preds = %1347
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %87) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2026 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

.preheader2026:                                   ; preds = %1349, %1354
  %1350 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1060)
          to label %1351 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2028

1351:                                             ; preds = %.preheader2026
  %1352 = load i8, ptr %1350, align 1, !tbaa !5, !range !9, !noundef !10
  %1353 = trunc nuw i8 %1352 to i1
  br i1 %1353, label %1367, label %1354

1354:                                             ; preds = %1351
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2026 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2028, !llvm.loop !23

1355:                                             ; preds = %1341
  %1356 = landingpad { ptr, i32 }
          cleanup
  br label %1359

1357:                                             ; preds = %1342
  %1358 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %85) #6
  br label %1359

1359:                                             ; preds = %1357, %1355
  %.pn555 = phi { ptr, i32 } [ %1358, %1357 ], [ %1356, %1355 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %85) #6
  br label %.loopexit.split-lp

1360:                                             ; preds = %1344
  %1361 = landingpad { ptr, i32 }
          cleanup
  br label %1364

1362:                                             ; preds = %1345
  %1363 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %86) #6
  br label %1364

1364:                                             ; preds = %1362, %1360
  %.pn557 = phi { ptr, i32 } [ %1363, %1362 ], [ %1361, %1360 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %86) #6
  br label %.loopexit.split-lp

1365:                                             ; preds = %1347
  %1366 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %87) #6
  br label %.loopexit.split-lp

1367:                                             ; preds = %1351
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1368 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1368:                                             ; preds = %1367
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %88) #6
  store i8 0, ptr %88, align 1, !tbaa !5
  %1369 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %88)
          to label %1370 unwind label %1388

1370:                                             ; preds = %1368
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %88) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1371 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1371:                                             ; preds = %1370
  %1372 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 8 dereferenceable(24) %6)
  %1373 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %865, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %1374 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1374:                                             ; preds = %1371
  %1375 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %868, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %1376 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1376:                                             ; preds = %1374
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %89) #6
  store i8 0, ptr %89, align 1, !tbaa !5
  %1377 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %871, ptr noundef nonnull align 1 dereferenceable(1) %89)
          to label %1378 unwind label %1390

1378:                                             ; preds = %1376
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %89) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %90) #6
  store i8 1, ptr %90, align 1, !tbaa !5
  %1379 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %90)
          to label %1380 unwind label %1392

1380:                                             ; preds = %1378
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %90) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2019 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

.preheader2019:                                   ; preds = %1380, %1396
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %91) #6
  store i8 0, ptr %91, align 1, !tbaa !5
  %1381 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %91)
          to label %1382 unwind label %1394

1382:                                             ; preds = %.preheader2019
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %91) #6
  %1383 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %876)
          to label %1384 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2021

1384:                                             ; preds = %1382
  %1385 = load i8, ptr %1383, align 1, !tbaa !5, !range !9, !noundef !10
  %1386 = trunc nuw i8 %1385 to i1
  br i1 %1386, label %1387, label %1396

1387:                                             ; preds = %1384
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1397 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1388:                                             ; preds = %1368
  %1389 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %88) #6
  br label %.loopexit.split-lp

1390:                                             ; preds = %1376
  %1391 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %89) #6
  br label %.loopexit.split-lp

1392:                                             ; preds = %1378
  %1393 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %90) #6
  br label %.loopexit.split-lp

1394:                                             ; preds = %.preheader2019
  %1395 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %91) #6
  br label %.loopexit.split-lp

1396:                                             ; preds = %1384
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2019 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2021, !llvm.loop !24

1397:                                             ; preds = %1387
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %92) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %92, i32 noundef 64)
          to label %1398 unwind label %1417

1398:                                             ; preds = %1397
  %1399 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1043, ptr noundef nonnull align 8 dereferenceable(24) %92)
          to label %1400 unwind label %1419

1400:                                             ; preds = %1398
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %92) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %92) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %93) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %93, i32 noundef 2)
          to label %1401 unwind label %1422

1401:                                             ; preds = %1400
  %1402 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1047, ptr noundef nonnull align 8 dereferenceable(24) %93)
          to label %1403 unwind label %1424

1403:                                             ; preds = %1401
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %93) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %93) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %94) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %94, i32 noundef 32)
          to label %1404 unwind label %1427

1404:                                             ; preds = %1403
  %1405 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1051, ptr noundef nonnull align 8 dereferenceable(24) %94)
          to label %1406 unwind label %1429

1406:                                             ; preds = %1404
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %94) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %94) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %95) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %95, i32 noundef 2)
          to label %1407 unwind label %1432

1407:                                             ; preds = %1406
  %1408 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1055, ptr noundef nonnull align 8 dereferenceable(24) %95)
          to label %1409 unwind label %1434

1409:                                             ; preds = %1407
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %95) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %95) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %96) #6
  store i8 1, ptr %96, align 1, !tbaa !5
  %1410 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %96)
          to label %1411 unwind label %1437

1411:                                             ; preds = %1409
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %96) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2011 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

.preheader2011:                                   ; preds = %1411, %1416
  %1412 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1060)
          to label %1413 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2013

1413:                                             ; preds = %.preheader2011
  %1414 = load i8, ptr %1412, align 1, !tbaa !5, !range !9, !noundef !10
  %1415 = trunc nuw i8 %1414 to i1
  br i1 %1415, label %1439, label %1416

1416:                                             ; preds = %1413
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2011 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2013, !llvm.loop !25

1417:                                             ; preds = %1397
  %1418 = landingpad { ptr, i32 }
          cleanup
  br label %1421

1419:                                             ; preds = %1398
  %1420 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %92) #6
  br label %1421

1421:                                             ; preds = %1419, %1417
  %.pn559 = phi { ptr, i32 } [ %1420, %1419 ], [ %1418, %1417 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %92) #6
  br label %.loopexit.split-lp

1422:                                             ; preds = %1400
  %1423 = landingpad { ptr, i32 }
          cleanup
  br label %1426

1424:                                             ; preds = %1401
  %1425 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %93) #6
  br label %1426

1426:                                             ; preds = %1424, %1422
  %.pn561 = phi { ptr, i32 } [ %1425, %1424 ], [ %1423, %1422 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %93) #6
  br label %.loopexit.split-lp

1427:                                             ; preds = %1403
  %1428 = landingpad { ptr, i32 }
          cleanup
  br label %1431

1429:                                             ; preds = %1404
  %1430 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %94) #6
  br label %1431

1431:                                             ; preds = %1429, %1427
  %.pn563 = phi { ptr, i32 } [ %1430, %1429 ], [ %1428, %1427 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %94) #6
  br label %.loopexit.split-lp

1432:                                             ; preds = %1406
  %1433 = landingpad { ptr, i32 }
          cleanup
  br label %1436

1434:                                             ; preds = %1407
  %1435 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %95) #6
  br label %1436

1436:                                             ; preds = %1434, %1432
  %.pn565 = phi { ptr, i32 } [ %1435, %1434 ], [ %1433, %1432 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %95) #6
  br label %.loopexit.split-lp

1437:                                             ; preds = %1409
  %1438 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %96) #6
  br label %.loopexit.split-lp

1439:                                             ; preds = %1413
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1440 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1440:                                             ; preds = %1439
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %97) #6
  store i8 0, ptr %97, align 1, !tbaa !5
  %1441 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %97)
          to label %1442 unwind label %1457

1442:                                             ; preds = %1440
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %97) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1443 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1443:                                             ; preds = %1442
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %98) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %98, i32 noundef 96)
          to label %1444 unwind label %1459

1444:                                             ; preds = %1443
  %1445 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1043, ptr noundef nonnull align 8 dereferenceable(24) %98)
          to label %1446 unwind label %1461

1446:                                             ; preds = %1444
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %98) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %98) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %99) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %99, i32 noundef 2)
          to label %1447 unwind label %1464

1447:                                             ; preds = %1446
  %1448 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1055, ptr noundef nonnull align 8 dereferenceable(24) %99)
          to label %1449 unwind label %1466

1449:                                             ; preds = %1447
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %99) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %99) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %100) #6
  store i8 1, ptr %100, align 1, !tbaa !5
  %1450 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %100)
          to label %1451 unwind label %1469

1451:                                             ; preds = %1449
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %100) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2004 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

.preheader2004:                                   ; preds = %1451, %1456
  %1452 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1060)
          to label %1453 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2006

1453:                                             ; preds = %.preheader2004
  %1454 = load i8, ptr %1452, align 1, !tbaa !5, !range !9, !noundef !10
  %1455 = trunc nuw i8 %1454 to i1
  br i1 %1455, label %1471, label %1456

1456:                                             ; preds = %1453
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader2004 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2006, !llvm.loop !26

1457:                                             ; preds = %1440
  %1458 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %97) #6
  br label %.loopexit.split-lp

1459:                                             ; preds = %1443
  %1460 = landingpad { ptr, i32 }
          cleanup
  br label %1463

1461:                                             ; preds = %1444
  %1462 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %98) #6
  br label %1463

1463:                                             ; preds = %1461, %1459
  %.pn567 = phi { ptr, i32 } [ %1462, %1461 ], [ %1460, %1459 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %98) #6
  br label %.loopexit.split-lp

1464:                                             ; preds = %1446
  %1465 = landingpad { ptr, i32 }
          cleanup
  br label %1468

1466:                                             ; preds = %1447
  %1467 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %99) #6
  br label %1468

1468:                                             ; preds = %1466, %1464
  %.pn569 = phi { ptr, i32 } [ %1467, %1466 ], [ %1465, %1464 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %99) #6
  br label %.loopexit.split-lp

1469:                                             ; preds = %1449
  %1470 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %100) #6
  br label %.loopexit.split-lp

1471:                                             ; preds = %1453
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1472 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1472:                                             ; preds = %1471
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %101) #6
  store i8 0, ptr %101, align 1, !tbaa !5
  %1473 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %101)
          to label %1474 unwind label %1492

1474:                                             ; preds = %1472
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %101) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1475 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1475:                                             ; preds = %1474
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %102) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %102, i32 noundef 128)
          to label %1476 unwind label %1494

1476:                                             ; preds = %1475
  %1477 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1043, ptr noundef nonnull align 8 dereferenceable(24) %102)
          to label %1478 unwind label %1496

1478:                                             ; preds = %1476
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %102) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %102) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %103) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %103, i32 noundef 0)
          to label %1479 unwind label %1499

1479:                                             ; preds = %1478
  %1480 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1047, ptr noundef nonnull align 8 dereferenceable(24) %103)
          to label %1481 unwind label %1501

1481:                                             ; preds = %1479
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %103) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %103) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %104) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %104, i32 noundef 2)
          to label %1482 unwind label %1504

1482:                                             ; preds = %1481
  %1483 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1055, ptr noundef nonnull align 8 dereferenceable(24) %104)
          to label %1484 unwind label %1506

1484:                                             ; preds = %1482
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %104) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %104) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %105) #6
  store i8 1, ptr %105, align 1, !tbaa !5
  %1485 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %105)
          to label %1486 unwind label %1509

1486:                                             ; preds = %1484
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %105) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1996 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

.preheader1996:                                   ; preds = %1486, %1491
  %1487 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1060)
          to label %1488 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1998

1488:                                             ; preds = %.preheader1996
  %1489 = load i8, ptr %1487, align 1, !tbaa !5, !range !9, !noundef !10
  %1490 = trunc nuw i8 %1489 to i1
  br i1 %1490, label %1511, label %1491

1491:                                             ; preds = %1488
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1996 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1998, !llvm.loop !27

1492:                                             ; preds = %1472
  %1493 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %101) #6
  br label %.loopexit.split-lp

1494:                                             ; preds = %1475
  %1495 = landingpad { ptr, i32 }
          cleanup
  br label %1498

1496:                                             ; preds = %1476
  %1497 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %102) #6
  br label %1498

1498:                                             ; preds = %1496, %1494
  %.pn571 = phi { ptr, i32 } [ %1497, %1496 ], [ %1495, %1494 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %102) #6
  br label %.loopexit.split-lp

1499:                                             ; preds = %1478
  %1500 = landingpad { ptr, i32 }
          cleanup
  br label %1503

1501:                                             ; preds = %1479
  %1502 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %103) #6
  br label %1503

1503:                                             ; preds = %1501, %1499
  %.pn573 = phi { ptr, i32 } [ %1502, %1501 ], [ %1500, %1499 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %103) #6
  br label %.loopexit.split-lp

1504:                                             ; preds = %1481
  %1505 = landingpad { ptr, i32 }
          cleanup
  br label %1508

1506:                                             ; preds = %1482
  %1507 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %104) #6
  br label %1508

1508:                                             ; preds = %1506, %1504
  %.pn575 = phi { ptr, i32 } [ %1507, %1506 ], [ %1505, %1504 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %104) #6
  br label %.loopexit.split-lp

1509:                                             ; preds = %1484
  %1510 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %105) #6
  br label %.loopexit.split-lp

1511:                                             ; preds = %1488
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1512 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1512:                                             ; preds = %1511
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %106) #6
  store i8 0, ptr %106, align 1, !tbaa !5
  %1513 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %106)
          to label %1514 unwind label %1529

1514:                                             ; preds = %1512
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %106) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1515 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1515:                                             ; preds = %1514
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %107) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %107, i32 noundef 160)
          to label %1516 unwind label %1531

1516:                                             ; preds = %1515
  %1517 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1043, ptr noundef nonnull align 8 dereferenceable(24) %107)
          to label %1518 unwind label %1533

1518:                                             ; preds = %1516
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %107) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %107) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %108) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %108, i32 noundef 2)
          to label %1519 unwind label %1536

1519:                                             ; preds = %1518
  %1520 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1055, ptr noundef nonnull align 8 dereferenceable(24) %108)
          to label %1521 unwind label %1538

1521:                                             ; preds = %1519
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %108) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %108) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %109) #6
  store i8 1, ptr %109, align 1, !tbaa !5
  %1522 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %109)
          to label %1523 unwind label %1541

1523:                                             ; preds = %1521
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %109) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1989 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

.preheader1989:                                   ; preds = %1523, %1528
  %1524 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1060)
          to label %1525 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1991

1525:                                             ; preds = %.preheader1989
  %1526 = load i8, ptr %1524, align 1, !tbaa !5, !range !9, !noundef !10
  %1527 = trunc nuw i8 %1526 to i1
  br i1 %1527, label %1543, label %1528

1528:                                             ; preds = %1525
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1989 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1991, !llvm.loop !28

1529:                                             ; preds = %1512
  %1530 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %106) #6
  br label %.loopexit.split-lp

1531:                                             ; preds = %1515
  %1532 = landingpad { ptr, i32 }
          cleanup
  br label %1535

1533:                                             ; preds = %1516
  %1534 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %107) #6
  br label %1535

1535:                                             ; preds = %1533, %1531
  %.pn577 = phi { ptr, i32 } [ %1534, %1533 ], [ %1532, %1531 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %107) #6
  br label %.loopexit.split-lp

1536:                                             ; preds = %1518
  %1537 = landingpad { ptr, i32 }
          cleanup
  br label %1540

1538:                                             ; preds = %1519
  %1539 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %108) #6
  br label %1540

1540:                                             ; preds = %1538, %1536
  %.pn579 = phi { ptr, i32 } [ %1539, %1538 ], [ %1537, %1536 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %108) #6
  br label %.loopexit.split-lp

1541:                                             ; preds = %1521
  %1542 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %109) #6
  br label %.loopexit.split-lp

1543:                                             ; preds = %1525
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1544 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1544:                                             ; preds = %1543
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %110) #6
  store i8 0, ptr %110, align 1, !tbaa !5
  %1545 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %110)
          to label %1546 unwind label %1547

1546:                                             ; preds = %1544
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %110) #6
  br label %.invoke2319

.invoke2319:                                      ; preds = %857, %1546
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1549 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1547:                                             ; preds = %1544
  %1548 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %110) #6
  br label %.loopexit.split-lp

1549:                                             ; preds = %.invoke2319
  %1550 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 270)
          to label %1551 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1551:                                             ; preds = %1549
  %1552 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef 0)
          to label %.preheader1981 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

.preheader1981:                                   ; preds = %1551
  %1553 = getelementptr inbounds i8, ptr %0, i64 2552
  %1554 = getelementptr inbounds i8, ptr %0, i64 2728
  %1555 = getelementptr inbounds i8, ptr %0, i64 2904
  %1556 = getelementptr inbounds i8, ptr %0, i64 600
  br label %1557

1557:                                             ; preds = %.preheader1981, %1617
  %1558 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %1559 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1983

1559:                                             ; preds = %1557
  %1560 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %1561 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1983

1561:                                             ; preds = %1559
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %111) #6
  store i8 0, ptr %111, align 1, !tbaa !5
  %1562 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %111)
          to label %1563 unwind label %1573

1563:                                             ; preds = %1561
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %111) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %112) #6
  store i8 1, ptr %112, align 1, !tbaa !5
  %1564 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %112)
          to label %1565 unwind label %1575

1565:                                             ; preds = %1563
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %112) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1974 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1983

.preheader1974:                                   ; preds = %1565, %1579
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %113) #6
  store i8 0, ptr %113, align 1, !tbaa !5
  %1566 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %113)
          to label %1567 unwind label %1577

1567:                                             ; preds = %.preheader1974
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %113) #6
  %1568 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %1569 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1976

1569:                                             ; preds = %1567
  %1570 = load i8, ptr %1568, align 1, !tbaa !5, !range !9, !noundef !10
  %1571 = trunc nuw i8 %1570 to i1
  br i1 %1571, label %1572, label %1579

1572:                                             ; preds = %1569
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1580 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1983

1573:                                             ; preds = %1561
  %1574 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %111) #6
  br label %.loopexit.split-lp

1575:                                             ; preds = %1563
  %1576 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %112) #6
  br label %.loopexit.split-lp

1577:                                             ; preds = %.preheader1974
  %1578 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %113) #6
  br label %.loopexit.split-lp

1579:                                             ; preds = %1569
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1974 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1976, !llvm.loop !29

1580:                                             ; preds = %1572
  %1581 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %5)
  %1582 = add nsw i64 %1581, 1
  %1583 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %5, i64 noundef %1582)
          to label %1584 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1983

1584:                                             ; preds = %1580
  %1585 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %1586 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1983

1586:                                             ; preds = %1584
  %1587 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %1588 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1983

1588:                                             ; preds = %1586
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %114) #6
  store i8 0, ptr %114, align 1, !tbaa !5
  %1589 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %114)
          to label %1590 unwind label %1600

1590:                                             ; preds = %1588
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %114) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %115) #6
  store i8 1, ptr %115, align 1, !tbaa !5
  %1591 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %115)
          to label %1592 unwind label %1602

1592:                                             ; preds = %1590
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %115) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1966 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1983

.preheader1966:                                   ; preds = %1592, %1606
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %116) #6
  store i8 0, ptr %116, align 1, !tbaa !5
  %1593 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %116)
          to label %1594 unwind label %1604

1594:                                             ; preds = %.preheader1966
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %116) #6
  %1595 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %1596 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1968

1596:                                             ; preds = %1594
  %1597 = load i8, ptr %1595, align 1, !tbaa !5, !range !9, !noundef !10
  %1598 = trunc nuw i8 %1597 to i1
  br i1 %1598, label %1599, label %1606

1599:                                             ; preds = %1596
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1607 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1983

1600:                                             ; preds = %1588
  %1601 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %114) #6
  br label %.loopexit.split-lp

1602:                                             ; preds = %1590
  %1603 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %115) #6
  br label %.loopexit.split-lp

1604:                                             ; preds = %.preheader1966
  %1605 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %116) #6
  br label %.loopexit.split-lp

1606:                                             ; preds = %1596
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1966 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1968, !llvm.loop !30

1607:                                             ; preds = %1599
  %1608 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %5)
  %1609 = add nsw i64 %1608, 15
  %1610 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %5, i64 noundef %1609)
          to label %1611 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1983

1611:                                             ; preds = %1607
  %1612 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 8, i32 noundef 4)
          to label %1613 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1983

1613:                                             ; preds = %1611
  %1614 = call noundef i64 @_ZNK5sc_dt15sc_int_subref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(28) %1612)
  %1615 = icmp ugt i64 %1614, -5
  br i1 %1615, label %1616, label %1617

1616:                                             ; preds = %1613
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1618 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1617:                                             ; preds = %1613
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1557 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1983, !llvm.loop !31

1618:                                             ; preds = %1616
  %1619 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 514)
          to label %1620 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1620:                                             ; preds = %1618
  %1621 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 5)
          to label %1622 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1622:                                             ; preds = %1620
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %117) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %117, i32 noundef 0)
          to label %1623 unwind label %1652

1623:                                             ; preds = %1622
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %118) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %118, i32 noundef 0)
          to label %1624 unwind label %1654

1624:                                             ; preds = %1623
  %1625 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %117, ptr noundef nonnull align 8 dereferenceable(8) %118)
          to label %1626 unwind label %1656

1626:                                             ; preds = %1624
  %1627 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 5, i32 noundef 0)
          to label %1628 unwind label %1656

1628:                                             ; preds = %1626
  %1629 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %1625, ptr noundef nonnull align 8 dereferenceable(8) %1627)
          to label %1630 unwind label %1656

1630:                                             ; preds = %1628
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %119) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %119, i32 noundef 0)
          to label %1631 unwind label %1658

1631:                                             ; preds = %1630
  %1632 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %1629, ptr noundef nonnull align 8 dereferenceable(8) %119)
          to label %1633 unwind label %1660

1633:                                             ; preds = %1631
  %1634 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %2, ptr noundef nonnull align 1 dereferenceable(1) %1632)
          to label %1635 unwind label %1660

1635:                                             ; preds = %1633
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %119) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %119) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %118) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %118) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %117) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %117) #6
  br label %1636

1636:                                             ; preds = %1709, %1635
  %1637 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %1638 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1961

1638:                                             ; preds = %1636
  %1639 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %1640 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1961

1640:                                             ; preds = %1638
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %120) #6
  store i8 0, ptr %120, align 1, !tbaa !5
  %1641 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %120)
          to label %1642 unwind label %1666

1642:                                             ; preds = %1640
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %120) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %121) #6
  store i8 1, ptr %121, align 1, !tbaa !5
  %1643 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %121)
          to label %1644 unwind label %1668

1644:                                             ; preds = %1642
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %121) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1952 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1961

.preheader1952:                                   ; preds = %1644, %1672
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %122) #6
  store i8 0, ptr %122, align 1, !tbaa !5
  %1645 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %122)
          to label %1646 unwind label %1670

1646:                                             ; preds = %.preheader1952
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %122) #6
  %1647 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %1648 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1954

1648:                                             ; preds = %1646
  %1649 = load i8, ptr %1647, align 1, !tbaa !5, !range !9, !noundef !10
  %1650 = trunc nuw i8 %1649 to i1
  br i1 %1650, label %1651, label %1672

1651:                                             ; preds = %1648
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1673 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1961

1652:                                             ; preds = %1622
  %1653 = landingpad { ptr, i32 }
          cleanup
  br label %1665

1654:                                             ; preds = %1623
  %1655 = landingpad { ptr, i32 }
          cleanup
  br label %1664

1656:                                             ; preds = %1628, %1626, %1624
  %1657 = landingpad { ptr, i32 }
          cleanup
  br label %1663

1658:                                             ; preds = %1630
  %1659 = landingpad { ptr, i32 }
          cleanup
  br label %1662

1660:                                             ; preds = %1633, %1631
  %1661 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %119) #6
  br label %1662

1662:                                             ; preds = %1660, %1658
  %.pn581 = phi { ptr, i32 } [ %1661, %1660 ], [ %1659, %1658 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %119) #6
  br label %1663

1663:                                             ; preds = %1662, %1656
  %.pn581.pn = phi { ptr, i32 } [ %.pn581, %1662 ], [ %1657, %1656 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %118) #6
  br label %1664

1664:                                             ; preds = %1663, %1654
  %.pn581.pn.pn = phi { ptr, i32 } [ %.pn581.pn, %1663 ], [ %1655, %1654 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %118) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %117) #6
  br label %1665

1665:                                             ; preds = %1664, %1652
  %.pn581.pn.pn.pn = phi { ptr, i32 } [ %.pn581.pn.pn, %1664 ], [ %1653, %1652 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %117) #6
  br label %.loopexit.split-lp

1666:                                             ; preds = %1640
  %1667 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %120) #6
  br label %.loopexit.split-lp

1668:                                             ; preds = %1642
  %1669 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %121) #6
  br label %.loopexit.split-lp

1670:                                             ; preds = %.preheader1952
  %1671 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %122) #6
  br label %.loopexit.split-lp

1672:                                             ; preds = %1648
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1952 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1954, !llvm.loop !32

1673:                                             ; preds = %1651
  %1674 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %5)
  %1675 = add nsw i64 %1674, 128
  %1676 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %5, i64 noundef %1675)
          to label %1677 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1961

1677:                                             ; preds = %1673
  %1678 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 13)
          to label %1679 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1961

1679:                                             ; preds = %1677
  %1680 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %1678)
          to label %1681 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1961

1681:                                             ; preds = %1679
  %.not = icmp eq i64 %1680, 0
  br i1 %.not, label %1683, label %1682

1682:                                             ; preds = %1681
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1724 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1683:                                             ; preds = %1681
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1684 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1961

1684:                                             ; preds = %1683
  %1685 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %15)
  %1686 = add nsw i64 %1685, 1
  %1687 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %15, i64 noundef %1686)
  %1688 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 6)
          to label %1689 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1961

1689:                                             ; preds = %1684
  %1690 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %1688)
          to label %1691 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1961

1691:                                             ; preds = %1689
  %.not586 = icmp eq i64 %1690, 0
  br i1 %.not586, label %1694, label %1692

1692:                                             ; preds = %1691
  %1693 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 0)
          to label %1696 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1961

1694:                                             ; preds = %1691
  %1695 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %15, ptr noundef nonnull align 8 dereferenceable(24) %15)
  br label %1696

1696:                                             ; preds = %1692, %1694
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %123) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %123, i32 noundef 0)
          to label %1697 unwind label %1710

1697:                                             ; preds = %1696
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %124) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %124, i32 noundef 0)
          to label %1698 unwind label %1712

1698:                                             ; preds = %1697
  %1699 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %123, ptr noundef nonnull align 8 dereferenceable(8) %124)
          to label %1700 unwind label %1714

1700:                                             ; preds = %1698
  %1701 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 5, i32 noundef 0)
          to label %1702 unwind label %1714

1702:                                             ; preds = %1700
  %1703 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %1699, ptr noundef nonnull align 8 dereferenceable(8) %1701)
          to label %1704 unwind label %1714

1704:                                             ; preds = %1702
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %125) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %125, i32 noundef 0)
          to label %1705 unwind label %1716

1705:                                             ; preds = %1704
  %1706 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %1703, ptr noundef nonnull align 8 dereferenceable(8) %125)
          to label %1707 unwind label %1718

1707:                                             ; preds = %1705
  %1708 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %2, ptr noundef nonnull align 1 dereferenceable(1) %1706)
          to label %1709 unwind label %1718

1709:                                             ; preds = %1707
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %125) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %125) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %124) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %124) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %123) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %123) #6
  br label %1636, !llvm.loop !33

1710:                                             ; preds = %1696
  %1711 = landingpad { ptr, i32 }
          cleanup
  br label %1723

1712:                                             ; preds = %1697
  %1713 = landingpad { ptr, i32 }
          cleanup
  br label %1722

1714:                                             ; preds = %1702, %1700, %1698
  %1715 = landingpad { ptr, i32 }
          cleanup
  br label %1721

1716:                                             ; preds = %1704
  %1717 = landingpad { ptr, i32 }
          cleanup
  br label %1720

1718:                                             ; preds = %1707, %1705
  %1719 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %125) #6
  br label %1720

1720:                                             ; preds = %1718, %1716
  %.pn587 = phi { ptr, i32 } [ %1719, %1718 ], [ %1717, %1716 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %125) #6
  br label %1721

1721:                                             ; preds = %1720, %1714
  %.pn587.pn = phi { ptr, i32 } [ %.pn587, %1720 ], [ %1715, %1714 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %124) #6
  br label %1722

1722:                                             ; preds = %1721, %1712
  %.pn587.pn.pn = phi { ptr, i32 } [ %.pn587.pn, %1721 ], [ %1713, %1712 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %124) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %123) #6
  br label %1723

1723:                                             ; preds = %1722, %1710
  %.pn587.pn.pn.pn = phi { ptr, i32 } [ %.pn587.pn.pn, %1722 ], [ %1711, %1710 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %123) #6
  br label %.loopexit.split-lp

1724:                                             ; preds = %1682
  %1725 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef -8190)
          to label %1726 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1726:                                             ; preds = %1724
  %1727 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef 63)
          to label %1728 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1728:                                             ; preds = %1726
  %1729 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %1730 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1730:                                             ; preds = %1728
  %1731 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %1732 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1732:                                             ; preds = %1730
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %126) #6
  store i8 0, ptr %126, align 1, !tbaa !5
  %1733 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %126)
          to label %1734 unwind label %1744

1734:                                             ; preds = %1732
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %126) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %127) #6
  store i8 1, ptr %127, align 1, !tbaa !5
  %1735 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %127)
          to label %1736 unwind label %1746

1736:                                             ; preds = %1734
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %127) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1945 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

.preheader1945:                                   ; preds = %1736, %1750
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %128) #6
  store i8 0, ptr %128, align 1, !tbaa !5
  %1737 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %128)
          to label %1738 unwind label %1748

1738:                                             ; preds = %.preheader1945
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %128) #6
  %1739 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %1740 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1947

1740:                                             ; preds = %1738
  %1741 = load i8, ptr %1739, align 1, !tbaa !5, !range !9, !noundef !10
  %1742 = trunc nuw i8 %1741 to i1
  br i1 %1742, label %1743, label %1750

1743:                                             ; preds = %1740
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1751 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

1744:                                             ; preds = %1732
  %1745 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %126) #6
  br label %.loopexit.split-lp

1746:                                             ; preds = %1734
  %1747 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %127) #6
  br label %.loopexit.split-lp

1748:                                             ; preds = %.preheader1945
  %1749 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %128) #6
  br label %.loopexit.split-lp

1750:                                             ; preds = %1740
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1945 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1947, !llvm.loop !34

1751:                                             ; preds = %1743
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1937 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113

.preheader1937:                                   ; preds = %1751
  %1752 = getelementptr inbounds i8, ptr %0, i64 4200
  %1753 = getelementptr inbounds i8, ptr %0, i64 3656
  %1754 = getelementptr inbounds i8, ptr %0, i64 3480
  %1755 = getelementptr inbounds i8, ptr %0, i64 1640
  %1756 = getelementptr inbounds i8, ptr %0, i64 1472
  %1757 = getelementptr inbounds i8, ptr %0, i64 784
  %1758 = getelementptr inbounds i8, ptr %0, i64 2008
  %1759 = getelementptr inbounds i8, ptr %0, i64 4376
  %1760 = getelementptr inbounds i8, ptr %0, i64 4024
  %1761 = getelementptr inbounds i8, ptr %0, i64 1288
  %1762 = getelementptr inbounds i8, ptr %0, i64 952
  %1763 = getelementptr inbounds i8, ptr %0, i64 1120
  %1764 = getelementptr inbounds i8, ptr %0, i64 1824
  br label %1765

1765:                                             ; preds = %.invoke, %.preheader1937
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1766 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1766:                                             ; preds = %1765
  %1767 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %26, i32 noundef -1)
          to label %1768 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1768:                                             ; preds = %1766
  %1769 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %27, i32 noundef 0)
          to label %1770 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1770:                                             ; preds = %1768
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1771 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1771:                                             ; preds = %1770
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %129) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %129, i32 noundef 256)
          to label %1772 unwind label %1787

1772:                                             ; preds = %1771
  %1773 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %129)
          to label %1774 unwind label %1789

1774:                                             ; preds = %1772
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %129) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %129) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %130) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %130, i32 noundef 0)
          to label %1775 unwind label %1792

1775:                                             ; preds = %1774
  %1776 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %130)
          to label %1777 unwind label %1794

1777:                                             ; preds = %1775
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %130) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %130) #6
  %1778 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %1779 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1779:                                             ; preds = %1777
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %131) #6
  store i8 1, ptr %131, align 1, !tbaa !5
  %1780 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %131)
          to label %1781 unwind label %1797

1781:                                             ; preds = %1779
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %131) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1930 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1930:                                   ; preds = %1781, %1786
  %1782 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %1783 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1932

1783:                                             ; preds = %.preheader1930
  %1784 = load i8, ptr %1782, align 1, !tbaa !5, !range !9, !noundef !10
  %1785 = trunc nuw i8 %1784 to i1
  br i1 %1785, label %1799, label %1786

1786:                                             ; preds = %1783
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1930 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1932, !llvm.loop !35

1787:                                             ; preds = %1771
  %1788 = landingpad { ptr, i32 }
          cleanup
  br label %1791

1789:                                             ; preds = %1772
  %1790 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %129) #6
  br label %1791

1791:                                             ; preds = %1789, %1787
  %.pn592 = phi { ptr, i32 } [ %1790, %1789 ], [ %1788, %1787 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %129) #6
  br label %.loopexit.split-lp

1792:                                             ; preds = %1774
  %1793 = landingpad { ptr, i32 }
          cleanup
  br label %1796

1794:                                             ; preds = %1775
  %1795 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %130) #6
  br label %1796

1796:                                             ; preds = %1794, %1792
  %.pn594 = phi { ptr, i32 } [ %1795, %1794 ], [ %1793, %1792 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %130) #6
  br label %.loopexit.split-lp

1797:                                             ; preds = %1779
  %1798 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %131) #6
  br label %.loopexit.split-lp

1799:                                             ; preds = %1783
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1800 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1800:                                             ; preds = %1799
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %132) #6
  store i8 0, ptr %132, align 1, !tbaa !5
  %1801 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %132)
          to label %1802 unwind label %1844

1802:                                             ; preds = %1800
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %132) #6
  %1803 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi14EEEEcvRKS3_Ev(ptr noundef nonnull align 8 dereferenceable(168) %1756)
          to label %1804 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1804:                                             ; preds = %1802
  %1805 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 13, i32 noundef 0)
          to label %1806 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1806:                                             ; preds = %1804
  %1807 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt13sc_int_subrefaSERKNS_11sc_int_baseE(ptr noundef nonnull align 8 dereferenceable(28) %1805, ptr noundef nonnull align 8 dereferenceable(24) %1803)
          to label %1808 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1808:                                             ; preds = %1806
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1809 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1809:                                             ; preds = %1808
  %1810 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 13, i32 noundef 7)
          to label %1811 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1811:                                             ; preds = %1809
  %1812 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %23, ptr noundef nonnull align 8 dereferenceable(28) %1810)
          to label %1813 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1813:                                             ; preds = %1811
  %1814 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %23, i32 noundef 6, i32 noundef 5)
          to label %1815 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1815:                                             ; preds = %1813
  %1816 = call noundef i64 @_ZNK5sc_dt15sc_int_subref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(28) %1814)
  %1817 = icmp eq i64 %1816, -1
  br i1 %1817, label %1818, label %1866

1818:                                             ; preds = %1815
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1819 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1819:                                             ; preds = %1818
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %133) #6
  store i8 1, ptr %133, align 1, !tbaa !5
  %1820 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %840, ptr noundef nonnull align 1 dereferenceable(1) %133)
          to label %1821 unwind label %1846

1821:                                             ; preds = %1819
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %133) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %134) #6
  store i8 1, ptr %134, align 1, !tbaa !5
  %1822 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %843, ptr noundef nonnull align 1 dereferenceable(1) %134)
          to label %1823 unwind label %1848

1823:                                             ; preds = %1821
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %134) #6
  %1824 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 22)
          to label %1825 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1825:                                             ; preds = %1823
  %1826 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %1827 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1827:                                             ; preds = %1825
  %1828 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %1829 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1829:                                             ; preds = %1827
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %135) #6
  store i8 1, ptr %135, align 1, !tbaa !5
  %1830 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %135)
          to label %1831 unwind label %1850

1831:                                             ; preds = %1829
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %135) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %136) #6
  store i8 1, ptr %136, align 1, !tbaa !5
  %1832 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %136)
          to label %1833 unwind label %1852

1833:                                             ; preds = %1831
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %136) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1305 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1305:                                   ; preds = %1833, %1856
  %1834 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %1835 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

1835:                                             ; preds = %.preheader1305
  %1836 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %1834)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %137) #6
  store i8 0, ptr %137, align 1, !tbaa !5
  %1837 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %137)
          to label %1838 unwind label %1854

1838:                                             ; preds = %1835
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %137) #6
  %1839 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %1840 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

1840:                                             ; preds = %1838
  %1841 = load i8, ptr %1839, align 1, !tbaa !5, !range !9, !noundef !10
  %1842 = trunc nuw i8 %1841 to i1
  br i1 %1842, label %1843, label %1856

1843:                                             ; preds = %1840
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1857 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1844:                                             ; preds = %1800
  %1845 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %132) #6
  br label %.loopexit.split-lp

1846:                                             ; preds = %1819
  %1847 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %133) #6
  br label %.loopexit.split-lp

1848:                                             ; preds = %1821
  %1849 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %134) #6
  br label %.loopexit.split-lp

1850:                                             ; preds = %1829
  %1851 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %135) #6
  br label %.loopexit.split-lp

1852:                                             ; preds = %1831
  %1853 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %136) #6
  br label %.loopexit.split-lp

1854:                                             ; preds = %1835
  %1855 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %137) #6
  br label %.loopexit.split-lp

1856:                                             ; preds = %1840
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1305 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !36

1857:                                             ; preds = %1843
  %1858 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 7, i32 noundef 0)
          to label %1859 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1859:                                             ; preds = %1857
  %1860 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %10, ptr noundef nonnull align 8 dereferenceable(28) %1858)
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1301 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1301:                                   ; preds = %1859, %1862
  %1861 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %10)
  %.not1232 = icmp eq i64 %1861, 0
  br i1 %.not1232, label %.loopexit1302, label %1862

1862:                                             ; preds = %.preheader1301
  %1863 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %10)
  %1864 = add nsw i64 %1863, -1
  %1865 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %10, i64 noundef %1864)
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1301 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !37

1866:                                             ; preds = %1815
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1867 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1867:                                             ; preds = %1866
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %138) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %138, i32 noundef 0)
          to label %1868 unwind label %1891

1868:                                             ; preds = %1867
  %1869 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %138)
          to label %1870 unwind label %1893

1870:                                             ; preds = %1868
  %1871 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %1869)
          to label %1872 unwind label %1893

1872:                                             ; preds = %1870
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %138) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %138) #6
  %1873 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %1874 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1874:                                             ; preds = %1872
  %1875 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %1876 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1876:                                             ; preds = %1874
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %139) #6
  store i8 1, ptr %139, align 1, !tbaa !5
  %1877 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %139)
          to label %1878 unwind label %1896

1878:                                             ; preds = %1876
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %139) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %140) #6
  store i8 1, ptr %140, align 1, !tbaa !5
  %1879 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %140)
          to label %1880 unwind label %1898

1880:                                             ; preds = %1878
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %140) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1922 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1922:                                   ; preds = %1880, %1902
  %1881 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %1882 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1924

1882:                                             ; preds = %.preheader1922
  %1883 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %1881)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %141) #6
  store i8 0, ptr %141, align 1, !tbaa !5
  %1884 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %141)
          to label %1885 unwind label %1900

1885:                                             ; preds = %1882
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %141) #6
  %1886 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %1887 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1924

1887:                                             ; preds = %1885
  %1888 = load i8, ptr %1886, align 1, !tbaa !5, !range !9, !noundef !10
  %1889 = trunc nuw i8 %1888 to i1
  br i1 %1889, label %1890, label %1902

1890:                                             ; preds = %1887
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1903 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1891:                                             ; preds = %1867
  %1892 = landingpad { ptr, i32 }
          cleanup
  br label %1895

1893:                                             ; preds = %1870, %1868
  %1894 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %138) #6
  br label %1895

1895:                                             ; preds = %1893, %1891
  %.pn596 = phi { ptr, i32 } [ %1894, %1893 ], [ %1892, %1891 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %138) #6
  br label %.loopexit.split-lp

1896:                                             ; preds = %1876
  %1897 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %139) #6
  br label %.loopexit.split-lp

1898:                                             ; preds = %1878
  %1899 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %140) #6
  br label %.loopexit.split-lp

1900:                                             ; preds = %1882
  %1901 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %141) #6
  br label %.loopexit.split-lp

1902:                                             ; preds = %1887
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1922 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1924, !llvm.loop !38

1903:                                             ; preds = %1890
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %142) #6
  %1904 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 4, i32 noundef 0)
          to label %1905 unwind label %1930

1905:                                             ; preds = %1903
  %1906 = call noundef i64 @_ZNK5sc_dt15sc_int_subref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(28) %1904)
  %1907 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1758)
          to label %1908 unwind label %1930

1908:                                             ; preds = %1905
  %1909 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %1907, i32 noundef 1)
          to label %1910 unwind label %1930

1910:                                             ; preds = %1908
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %143) #6
  invoke void @_ZN5sc_dt6sc_intILi4EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %143, i32 noundef 0)
          to label %1911 unwind label %1932

1911:                                             ; preds = %1910
  %1912 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %1909, ptr noundef nonnull align 8 dereferenceable(8) %143)
          to label %1913 unwind label %1934

1913:                                             ; preds = %1911
  invoke void @_ZN5sc_dtorEyRKNS_12sc_concatrefE(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_unsigned") align 8 %142, i64 noundef %1906, ptr noundef nonnull align 8 dereferenceable(36) %1912)
          to label %1914 unwind label %1934

1914:                                             ; preds = %1913
  %1915 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSERKNS_11sc_unsignedE(ptr noundef nonnull align 8 dereferenceable(24) %11, ptr noundef nonnull align 8 dereferenceable(32) %142)
          to label %1916 unwind label %1936

1916:                                             ; preds = %1914
  call void @_ZN5sc_dt11sc_unsignedD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %142) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %143) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %143) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %142) #6
  %1917 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 9, i32 noundef 5)
          to label %1918 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1918:                                             ; preds = %1916
  %1919 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %12, ptr noundef nonnull align 8 dereferenceable(28) %1917)
  %1920 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %11)
  %1921 = icmp sgt i64 %1920, 2
  br i1 %1921, label %1922, label %1945

1922:                                             ; preds = %1918
  %1923 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %27, i32 noundef 1)
          to label %1924 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1924:                                             ; preds = %1922
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1925 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1925:                                             ; preds = %1924
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %144) #6
  store i8 1, ptr %144, align 1, !tbaa !5
  %1926 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %840, ptr noundef nonnull align 1 dereferenceable(1) %144)
          to label %1927 unwind label %1941

1927:                                             ; preds = %1925
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %144) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %145) #6
  store i8 1, ptr %145, align 1, !tbaa !5
  %1928 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %843, ptr noundef nonnull align 1 dereferenceable(1) %145)
          to label %1929 unwind label %1943

1929:                                             ; preds = %1927
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %145) #6
  br label %.loopexit1302

1930:                                             ; preds = %1908, %1905, %1903
  %1931 = landingpad { ptr, i32 }
          cleanup
  br label %1940

1932:                                             ; preds = %1910
  %1933 = landingpad { ptr, i32 }
          cleanup
  br label %1939

1934:                                             ; preds = %1913, %1911
  %1935 = landingpad { ptr, i32 }
          cleanup
  br label %1938

1936:                                             ; preds = %1914
  %1937 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt11sc_unsignedD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %142) #6
  br label %1938

1938:                                             ; preds = %1936, %1934
  %.pn598 = phi { ptr, i32 } [ %1937, %1936 ], [ %1935, %1934 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %143) #6
  br label %1939

1939:                                             ; preds = %1938, %1932
  %.pn598.pn = phi { ptr, i32 } [ %.pn598, %1938 ], [ %1933, %1932 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %143) #6
  br label %1940

1940:                                             ; preds = %1939, %1930
  %.pn598.pn.pn = phi { ptr, i32 } [ %.pn598.pn, %1939 ], [ %1931, %1930 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %142) #6
  br label %.loopexit.split-lp

1941:                                             ; preds = %1925
  %1942 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %144) #6
  br label %.loopexit.split-lp

1943:                                             ; preds = %1927
  %1944 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %145) #6
  br label %.loopexit.split-lp

1945:                                             ; preds = %1918
  %1946 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %27, ptr noundef nonnull align 8 dereferenceable(24) %27)
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1947 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1947:                                             ; preds = %1945
  %1948 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 0)
          to label %1949 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1949:                                             ; preds = %1947
  %1950 = call noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %1948)
  %1951 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 1)
          to label %1952 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1952:                                             ; preds = %1949
  %1953 = call noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %1951)
  %1954 = zext i1 %1953 to i32
  %1955 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %26, i32 noundef %1954)
          to label %1956 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1956:                                             ; preds = %1952
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %146) #6
  %1957 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 1)
          to label %1958 unwind label %1996

1958:                                             ; preds = %1956
  %1959 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %1957)
          to label %1960 unwind label %1996

1960:                                             ; preds = %1958
  %1961 = icmp ne i64 %1959, 0
  %1962 = zext i1 %1961 to i8
  store i8 %1962, ptr %146, align 1, !tbaa !5
  %1963 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %840, ptr noundef nonnull align 1 dereferenceable(1) %146)
          to label %1964 unwind label %1996

1964:                                             ; preds = %1960
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %146) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %147) #6
  %1965 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 0)
          to label %1966 unwind label %1998

1966:                                             ; preds = %1964
  %1967 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %1965)
          to label %1968 unwind label %1998

1968:                                             ; preds = %1966
  %1969 = icmp ne i64 %1967, 0
  %1970 = zext i1 %1969 to i8
  store i8 %1970, ptr %147, align 1, !tbaa !5
  %1971 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %843, ptr noundef nonnull align 1 dereferenceable(1) %147)
          to label %1972 unwind label %1998

1972:                                             ; preds = %1968
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %147) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %148) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %148, i32 noundef 8)
          to label %1973 unwind label %2000

1973:                                             ; preds = %1972
  %1974 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %148)
          to label %1975 unwind label %2002

1975:                                             ; preds = %1973
  %1976 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %1974)
          to label %1977 unwind label %2002

1977:                                             ; preds = %1975
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %148) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %148) #6
  %1978 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %1979 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1979:                                             ; preds = %1977
  %1980 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %1981 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1981:                                             ; preds = %1979
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %149) #6
  store i8 1, ptr %149, align 1, !tbaa !5
  %1982 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %149)
          to label %1983 unwind label %2005

1983:                                             ; preds = %1981
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %149) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %150) #6
  store i8 1, ptr %150, align 1, !tbaa !5
  %1984 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %150)
          to label %1985 unwind label %2007

1985:                                             ; preds = %1983
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %150) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1915 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1915:                                   ; preds = %1985, %2011
  %1986 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %1987 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1917

1987:                                             ; preds = %.preheader1915
  %1988 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %1986)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %151) #6
  store i8 0, ptr %151, align 1, !tbaa !5
  %1989 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %151)
          to label %1990 unwind label %2009

1990:                                             ; preds = %1987
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %151) #6
  %1991 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %1992 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1917

1992:                                             ; preds = %1990
  %1993 = load i8, ptr %1991, align 1, !tbaa !5, !range !9, !noundef !10
  %1994 = trunc nuw i8 %1993 to i1
  br i1 %1994, label %1995, label %2011

1995:                                             ; preds = %1992
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2012 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

1996:                                             ; preds = %1960, %1958, %1956
  %1997 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %146) #6
  br label %.loopexit.split-lp

1998:                                             ; preds = %1968, %1966, %1964
  %1999 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %147) #6
  br label %.loopexit.split-lp

2000:                                             ; preds = %1972
  %2001 = landingpad { ptr, i32 }
          cleanup
  br label %2004

2002:                                             ; preds = %1975, %1973
  %2003 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %148) #6
  br label %2004

2004:                                             ; preds = %2002, %2000
  %.pn602 = phi { ptr, i32 } [ %2003, %2002 ], [ %2001, %2000 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %148) #6
  br label %.loopexit.split-lp

2005:                                             ; preds = %1981
  %2006 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %149) #6
  br label %.loopexit.split-lp

2007:                                             ; preds = %1983
  %2008 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %150) #6
  br label %.loopexit.split-lp

2009:                                             ; preds = %1987
  %2010 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %151) #6
  br label %.loopexit.split-lp

2011:                                             ; preds = %1992
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1915 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1917, !llvm.loop !39

2012:                                             ; preds = %1995
  %2013 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1758)
          to label %2014 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2014:                                             ; preds = %2012
  %2015 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %2013, i32 noundef 2)
          to label %2016 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2016:                                             ; preds = %2014
  %2017 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %2015)
          to label %2018 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2018:                                             ; preds = %2016
  %.not604 = icmp eq i64 %2017, 0
  br i1 %.not604, label %2021, label %2019

2019:                                             ; preds = %2018
  %2020 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 254)
          to label %2023 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2021:                                             ; preds = %2018
  %2022 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %3)
  br label %2023

2023:                                             ; preds = %2019, %2021
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2024 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2024:                                             ; preds = %2023
  %2025 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 7, i32 noundef 0)
          to label %2026 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2026:                                             ; preds = %2024
  %2027 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi32EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %28, ptr noundef nonnull align 8 dereferenceable(28) %2025)
  %2028 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %28)
  %2029 = trunc i64 %2028 to i32
  switch i32 %2029, label %.invoke2324 [
    i32 193, label %2030
    i32 1, label %2353
    i32 194, label %2490
    i32 201, label %2490
    i32 205, label %2490
    i32 209, label %2496
    i32 7, label %2503
    i32 59, label %2745
    i32 208, label %3440
    i32 9, label %3799
    i32 210, label %5096
    i32 176, label %6008
    i32 10, label %7152
  ]

2030:                                             ; preds = %2026
  %2031 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %12)
  %.not1185 = icmp eq i64 %2031, 3
  br i1 %.not1185, label %2032, label %.invoke2324

2032:                                             ; preds = %2030
  %2033 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %11)
  %.not1186 = icmp eq i64 %2033, 0
  br i1 %.not1186, label %2034, label %.invoke2324

2034:                                             ; preds = %2032
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2035 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2035:                                             ; preds = %2034
  %2036 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %26, i32 noundef 1)
          to label %2037 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2037:                                             ; preds = %2035
  %2038 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %27, ptr noundef nonnull align 8 dereferenceable(24) %27)
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %152) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %153) #6
  invoke void @_ZN5sc_dt6sc_intILi4EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %153, i32 noundef 0)
          to label %2039 unwind label %2080

2039:                                             ; preds = %2037
  %2040 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %153, ptr noundef nonnull align 8 dereferenceable(8) %23)
          to label %2041 unwind label %2082

2041:                                             ; preds = %2039
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %154) #6
  %2042 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1762)
          to label %2043 unwind label %2084

2043:                                             ; preds = %2041
  invoke void @_ZN5sc_dt6sc_intILi4EEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %154, ptr noundef nonnull align 8 dereferenceable(24) %2042)
          to label %2044 unwind label %2084

2044:                                             ; preds = %2043
  %2045 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %2040, ptr noundef nonnull align 8 dereferenceable(8) %154)
          to label %2046 unwind label %2086

2046:                                             ; preds = %2044
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %155) #6
  %2047 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1761)
          to label %2048 unwind label %2088

2048:                                             ; preds = %2046
  %2049 = load i8, ptr %2047, align 1, !tbaa !5, !range !9, !noundef !10
  %2050 = zext nneg i8 %2049 to i32
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %155, i32 noundef %2050)
          to label %2051 unwind label %2088

2051:                                             ; preds = %2048
  %2052 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %2045, ptr noundef nonnull align 8 dereferenceable(8) %155)
          to label %2053 unwind label %2090

2053:                                             ; preds = %2051
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %152, ptr noundef nonnull align 1 dereferenceable(1) %2052)
          to label %2054 unwind label %2090

2054:                                             ; preds = %2053
  %2055 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %152)
          to label %2056 unwind label %2092

2056:                                             ; preds = %2054
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %152) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %155) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %155) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %154) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %154) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %153) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %153) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %152) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %156) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %157) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %157, i32 noundef 10)
          to label %2057 unwind label %2100

2057:                                             ; preds = %2056
  %2058 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %157, ptr noundef nonnull align 8 dereferenceable(8) %24)
          to label %2059 unwind label %2102

2059:                                             ; preds = %2057
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %158) #6
  %2060 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1764)
          to label %2061 unwind label %2104

2061:                                             ; preds = %2059
  %2062 = load i8, ptr %2060, align 1, !tbaa !5, !range !9, !noundef !10
  %2063 = zext nneg i8 %2062 to i32
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %158, i32 noundef %2063)
          to label %2064 unwind label %2104

2064:                                             ; preds = %2061
  %2065 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %2058, ptr noundef nonnull align 8 dereferenceable(8) %158)
          to label %2066 unwind label %2106

2066:                                             ; preds = %2064
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %156, ptr noundef nonnull align 1 dereferenceable(1) %2065)
          to label %2067 unwind label %2106

2067:                                             ; preds = %2066
  %2068 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %156)
          to label %2069 unwind label %2108

2069:                                             ; preds = %2067
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %156) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %158) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %158) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %157) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %157) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %156) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %159) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %159, i32 noundef -4)
          to label %2070 unwind label %2114

2070:                                             ; preds = %2069
  %2071 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %159)
          to label %2072 unwind label %2116

2072:                                             ; preds = %2070
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %159) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %159) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %160) #6
  store i8 1, ptr %160, align 1, !tbaa !5
  %2073 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %160)
          to label %2074 unwind label %2119

2074:                                             ; preds = %2072
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %160) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1323 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1323:                                   ; preds = %2074, %2079
  %2075 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %2076 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2076:                                             ; preds = %.preheader1323
  %2077 = load i8, ptr %2075, align 1, !tbaa !5, !range !9, !noundef !10
  %2078 = trunc nuw i8 %2077 to i1
  br i1 %2078, label %2121, label %2079

2079:                                             ; preds = %2076
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1323 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !40

2080:                                             ; preds = %2037
  %2081 = landingpad { ptr, i32 }
          cleanup
  br label %2099

2082:                                             ; preds = %2039
  %2083 = landingpad { ptr, i32 }
          cleanup
  br label %2098

2084:                                             ; preds = %2043, %2041
  %2085 = landingpad { ptr, i32 }
          cleanup
  br label %2097

2086:                                             ; preds = %2044
  %2087 = landingpad { ptr, i32 }
          cleanup
  br label %2096

2088:                                             ; preds = %2048, %2046
  %2089 = landingpad { ptr, i32 }
          cleanup
  br label %2095

2090:                                             ; preds = %2053, %2051
  %2091 = landingpad { ptr, i32 }
          cleanup
  br label %2094

2092:                                             ; preds = %2054
  %2093 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %152) #6
  br label %2094

2094:                                             ; preds = %2092, %2090
  %.pn1187 = phi { ptr, i32 } [ %2093, %2092 ], [ %2091, %2090 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %155) #6
  br label %2095

2095:                                             ; preds = %2094, %2088
  %.pn1187.pn = phi { ptr, i32 } [ %.pn1187, %2094 ], [ %2089, %2088 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %155) #6
  br label %2096

2096:                                             ; preds = %2095, %2086
  %.pn1187.pn.pn = phi { ptr, i32 } [ %.pn1187.pn, %2095 ], [ %2087, %2086 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %154) #6
  br label %2097

2097:                                             ; preds = %2096, %2084
  %.pn1187.pn.pn.pn = phi { ptr, i32 } [ %.pn1187.pn.pn, %2096 ], [ %2085, %2084 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %154) #6
  br label %2098

2098:                                             ; preds = %2097, %2082
  %.pn1187.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1187.pn.pn.pn, %2097 ], [ %2083, %2082 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %153) #6
  br label %2099

2099:                                             ; preds = %2098, %2080
  %.pn1187.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1187.pn.pn.pn.pn, %2098 ], [ %2081, %2080 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %153) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %152) #6
  br label %.loopexit.split-lp

2100:                                             ; preds = %2056
  %2101 = landingpad { ptr, i32 }
          cleanup
  br label %2113

2102:                                             ; preds = %2057
  %2103 = landingpad { ptr, i32 }
          cleanup
  br label %2112

2104:                                             ; preds = %2061, %2059
  %2105 = landingpad { ptr, i32 }
          cleanup
  br label %2111

2106:                                             ; preds = %2066, %2064
  %2107 = landingpad { ptr, i32 }
          cleanup
  br label %2110

2108:                                             ; preds = %2067
  %2109 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %156) #6
  br label %2110

2110:                                             ; preds = %2108, %2106
  %.pn1194 = phi { ptr, i32 } [ %2109, %2108 ], [ %2107, %2106 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %158) #6
  br label %2111

2111:                                             ; preds = %2110, %2104
  %.pn1194.pn = phi { ptr, i32 } [ %.pn1194, %2110 ], [ %2105, %2104 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %158) #6
  br label %2112

2112:                                             ; preds = %2111, %2102
  %.pn1194.pn.pn = phi { ptr, i32 } [ %.pn1194.pn, %2111 ], [ %2103, %2102 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %157) #6
  br label %2113

2113:                                             ; preds = %2112, %2100
  %.pn1194.pn.pn.pn = phi { ptr, i32 } [ %.pn1194.pn.pn, %2112 ], [ %2101, %2100 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %157) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %156) #6
  br label %.loopexit.split-lp

2114:                                             ; preds = %2069
  %2115 = landingpad { ptr, i32 }
          cleanup
  br label %2118

2116:                                             ; preds = %2070
  %2117 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %159) #6
  br label %2118

2118:                                             ; preds = %2116, %2114
  %.pn1199 = phi { ptr, i32 } [ %2117, %2116 ], [ %2115, %2114 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %159) #6
  br label %.loopexit.split-lp

2119:                                             ; preds = %2072
  %2120 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %160) #6
  br label %.loopexit.split-lp

2121:                                             ; preds = %2076
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2122 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2122:                                             ; preds = %2121
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %161) #6
  store i8 0, ptr %161, align 1, !tbaa !5
  %2123 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %161)
          to label %2124 unwind label %2147

2124:                                             ; preds = %2122
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %161) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2125 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2125:                                             ; preds = %2124
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %162) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %162, i32 noundef 272)
          to label %2126 unwind label %2149

2126:                                             ; preds = %2125
  %2127 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %162)
          to label %2128 unwind label %2151

2128:                                             ; preds = %2126
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %162) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %162) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %163) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %164) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %164, i32 noundef 0)
          to label %2129 unwind label %2154

2129:                                             ; preds = %2128
  %2130 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %164)
          to label %2131 unwind label %2156

2131:                                             ; preds = %2129
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %163, ptr noundef nonnull align 1 dereferenceable(1) %2130)
          to label %2132 unwind label %2156

2132:                                             ; preds = %2131
  %2133 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %163)
          to label %2134 unwind label %2158

2134:                                             ; preds = %2132
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %163) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %164) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %164) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %163) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %165) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %165, i32 noundef 1)
          to label %2135 unwind label %2162

2135:                                             ; preds = %2134
  %2136 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %165)
          to label %2137 unwind label %2164

2137:                                             ; preds = %2135
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %165) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %165) #6
  %2138 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %2139 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2139:                                             ; preds = %2137
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %166) #6
  store i8 1, ptr %166, align 1, !tbaa !5
  %2140 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %166)
          to label %2141 unwind label %2167

2141:                                             ; preds = %2139
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %166) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1319 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1319:                                   ; preds = %2141, %2146
  %2142 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %2143 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2143:                                             ; preds = %.preheader1319
  %2144 = load i8, ptr %2142, align 1, !tbaa !5, !range !9, !noundef !10
  %2145 = trunc nuw i8 %2144 to i1
  br i1 %2145, label %2169, label %2146

2146:                                             ; preds = %2143
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1319 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !41

2147:                                             ; preds = %2122
  %2148 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %161) #6
  br label %.loopexit.split-lp

2149:                                             ; preds = %2125
  %2150 = landingpad { ptr, i32 }
          cleanup
  br label %2153

2151:                                             ; preds = %2126
  %2152 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %162) #6
  br label %2153

2153:                                             ; preds = %2151, %2149
  %.pn1201 = phi { ptr, i32 } [ %2152, %2151 ], [ %2150, %2149 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %162) #6
  br label %.loopexit.split-lp

2154:                                             ; preds = %2128
  %2155 = landingpad { ptr, i32 }
          cleanup
  br label %2161

2156:                                             ; preds = %2131, %2129
  %2157 = landingpad { ptr, i32 }
          cleanup
  br label %2160

2158:                                             ; preds = %2132
  %2159 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %163) #6
  br label %2160

2160:                                             ; preds = %2158, %2156
  %.pn1203 = phi { ptr, i32 } [ %2159, %2158 ], [ %2157, %2156 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %164) #6
  br label %2161

2161:                                             ; preds = %2160, %2154
  %.pn1203.pn = phi { ptr, i32 } [ %.pn1203, %2160 ], [ %2155, %2154 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %164) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %163) #6
  br label %.loopexit.split-lp

2162:                                             ; preds = %2134
  %2163 = landingpad { ptr, i32 }
          cleanup
  br label %2166

2164:                                             ; preds = %2135
  %2165 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %165) #6
  br label %2166

2166:                                             ; preds = %2164, %2162
  %.pn1206 = phi { ptr, i32 } [ %2165, %2164 ], [ %2163, %2162 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %165) #6
  br label %.loopexit.split-lp

2167:                                             ; preds = %2139
  %2168 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %166) #6
  br label %.loopexit.split-lp

2169:                                             ; preds = %2143
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2170 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2170:                                             ; preds = %2169
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %167) #6
  store i8 0, ptr %167, align 1, !tbaa !5
  %2171 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %167)
          to label %2172 unwind label %2195

2172:                                             ; preds = %2170
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %167) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2173 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2173:                                             ; preds = %2172
  %2174 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %26, i32 noundef -2)
          to label %2175 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2175:                                             ; preds = %2173
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %168) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %168, i32 noundef -8192)
          to label %2176 unwind label %2197

2176:                                             ; preds = %2175
  %2177 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %168)
          to label %2178 unwind label %2199

2178:                                             ; preds = %2176
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %168) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %168) #6
  %2179 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %2180 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2180:                                             ; preds = %2178
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %169) #6
  store i8 1, ptr %169, align 1, !tbaa !5
  %2181 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %169)
          to label %2182 unwind label %2202

2182:                                             ; preds = %2180
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %169) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %170) #6
  store i8 1, ptr %170, align 1, !tbaa !5
  %2183 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %170)
          to label %2184 unwind label %2204

2184:                                             ; preds = %2182
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %170) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1316 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1316:                                   ; preds = %2184, %2208
  %2185 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %2186 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2186:                                             ; preds = %.preheader1316
  %2187 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %2185)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %171) #6
  store i8 0, ptr %171, align 1, !tbaa !5
  %2188 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %171)
          to label %2189 unwind label %2206

2189:                                             ; preds = %2186
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %171) #6
  %2190 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %2191 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2191:                                             ; preds = %2189
  %2192 = load i8, ptr %2190, align 1, !tbaa !5, !range !9, !noundef !10
  %2193 = trunc nuw i8 %2192 to i1
  br i1 %2193, label %2194, label %2208

2194:                                             ; preds = %2191
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2209 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2195:                                             ; preds = %2170
  %2196 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %167) #6
  br label %.loopexit.split-lp

2197:                                             ; preds = %2175
  %2198 = landingpad { ptr, i32 }
          cleanup
  br label %2201

2199:                                             ; preds = %2176
  %2200 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %168) #6
  br label %2201

2201:                                             ; preds = %2199, %2197
  %.pn1208 = phi { ptr, i32 } [ %2200, %2199 ], [ %2198, %2197 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %168) #6
  br label %.loopexit.split-lp

2202:                                             ; preds = %2180
  %2203 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %169) #6
  br label %.loopexit.split-lp

2204:                                             ; preds = %2182
  %2205 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %170) #6
  br label %.loopexit.split-lp

2206:                                             ; preds = %2186
  %2207 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %171) #6
  br label %.loopexit.split-lp

2208:                                             ; preds = %2191
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1316 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !42

2209:                                             ; preds = %2194
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %172) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %173) #6
  invoke void @_ZN5sc_dt6sc_intILi4EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %173, i32 noundef 0)
          to label %2210 unwind label %2253

2210:                                             ; preds = %2209
  %2211 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 13, i32 noundef 7)
          to label %2212 unwind label %2255

2212:                                             ; preds = %2210
  %2213 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %173, ptr noundef nonnull align 8 dereferenceable(8) %2211)
          to label %2214 unwind label %2255

2214:                                             ; preds = %2212
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %174) #6
  %2215 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1762)
          to label %2216 unwind label %2257

2216:                                             ; preds = %2214
  invoke void @_ZN5sc_dt6sc_intILi4EEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %174, ptr noundef nonnull align 8 dereferenceable(24) %2215)
          to label %2217 unwind label %2257

2217:                                             ; preds = %2216
  %2218 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %2213, ptr noundef nonnull align 8 dereferenceable(8) %174)
          to label %2219 unwind label %2259

2219:                                             ; preds = %2217
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %175) #6
  %2220 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1761)
          to label %2221 unwind label %2261

2221:                                             ; preds = %2219
  %2222 = load i8, ptr %2220, align 1, !tbaa !5, !range !9, !noundef !10
  %2223 = zext nneg i8 %2222 to i32
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %175, i32 noundef %2223)
          to label %2224 unwind label %2261

2224:                                             ; preds = %2221
  %2225 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %2218, ptr noundef nonnull align 8 dereferenceable(8) %175)
          to label %2226 unwind label %2263

2226:                                             ; preds = %2224
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %172, ptr noundef nonnull align 1 dereferenceable(1) %2225)
          to label %2227 unwind label %2263

2227:                                             ; preds = %2226
  %2228 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %172)
          to label %2229 unwind label %2265

2229:                                             ; preds = %2227
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %172) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %175) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %175) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %174) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %174) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %173) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %173) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %172) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %176) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %177) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %177, i32 noundef 11)
          to label %2230 unwind label %2273

2230:                                             ; preds = %2229
  %2231 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %177, ptr noundef nonnull align 8 dereferenceable(8) %25)
          to label %2232 unwind label %2275

2232:                                             ; preds = %2230
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %178) #6
  %2233 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1764)
          to label %2234 unwind label %2277

2234:                                             ; preds = %2232
  %2235 = load i8, ptr %2233, align 1, !tbaa !5, !range !9, !noundef !10
  %2236 = zext nneg i8 %2235 to i32
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %178, i32 noundef %2236)
          to label %2237 unwind label %2277

2237:                                             ; preds = %2234
  %2238 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %2231, ptr noundef nonnull align 8 dereferenceable(8) %178)
          to label %2239 unwind label %2279

2239:                                             ; preds = %2237
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %176, ptr noundef nonnull align 1 dereferenceable(1) %2238)
          to label %2240 unwind label %2279

2240:                                             ; preds = %2239
  %2241 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %176)
          to label %2242 unwind label %2281

2242:                                             ; preds = %2240
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %176) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %178) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %178) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %177) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %177) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %176) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %179) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %179, i32 noundef -4)
          to label %2243 unwind label %2287

2243:                                             ; preds = %2242
  %2244 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %179)
          to label %2245 unwind label %2289

2245:                                             ; preds = %2243
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %179) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %179) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %180) #6
  store i8 1, ptr %180, align 1, !tbaa !5
  %2246 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %180)
          to label %2247 unwind label %2292

2247:                                             ; preds = %2245
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %180) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1312 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1312:                                   ; preds = %2247, %2252
  %2248 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %2249 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2249:                                             ; preds = %.preheader1312
  %2250 = load i8, ptr %2248, align 1, !tbaa !5, !range !9, !noundef !10
  %2251 = trunc nuw i8 %2250 to i1
  br i1 %2251, label %2294, label %2252

2252:                                             ; preds = %2249
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1312 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !43

2253:                                             ; preds = %2209
  %2254 = landingpad { ptr, i32 }
          cleanup
  br label %2272

2255:                                             ; preds = %2212, %2210
  %2256 = landingpad { ptr, i32 }
          cleanup
  br label %2271

2257:                                             ; preds = %2216, %2214
  %2258 = landingpad { ptr, i32 }
          cleanup
  br label %2270

2259:                                             ; preds = %2217
  %2260 = landingpad { ptr, i32 }
          cleanup
  br label %2269

2261:                                             ; preds = %2221, %2219
  %2262 = landingpad { ptr, i32 }
          cleanup
  br label %2268

2263:                                             ; preds = %2226, %2224
  %2264 = landingpad { ptr, i32 }
          cleanup
  br label %2267

2265:                                             ; preds = %2227
  %2266 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %172) #6
  br label %2267

2267:                                             ; preds = %2265, %2263
  %.pn1210 = phi { ptr, i32 } [ %2266, %2265 ], [ %2264, %2263 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %175) #6
  br label %2268

2268:                                             ; preds = %2267, %2261
  %.pn1210.pn = phi { ptr, i32 } [ %.pn1210, %2267 ], [ %2262, %2261 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %175) #6
  br label %2269

2269:                                             ; preds = %2268, %2259
  %.pn1210.pn.pn = phi { ptr, i32 } [ %.pn1210.pn, %2268 ], [ %2260, %2259 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %174) #6
  br label %2270

2270:                                             ; preds = %2269, %2257
  %.pn1210.pn.pn.pn = phi { ptr, i32 } [ %.pn1210.pn.pn, %2269 ], [ %2258, %2257 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %174) #6
  br label %2271

2271:                                             ; preds = %2270, %2255
  %.pn1210.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1210.pn.pn.pn, %2270 ], [ %2256, %2255 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %173) #6
  br label %2272

2272:                                             ; preds = %2271, %2253
  %.pn1210.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1210.pn.pn.pn.pn, %2271 ], [ %2254, %2253 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %173) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %172) #6
  br label %.loopexit.split-lp

2273:                                             ; preds = %2229
  %2274 = landingpad { ptr, i32 }
          cleanup
  br label %2286

2275:                                             ; preds = %2230
  %2276 = landingpad { ptr, i32 }
          cleanup
  br label %2285

2277:                                             ; preds = %2234, %2232
  %2278 = landingpad { ptr, i32 }
          cleanup
  br label %2284

2279:                                             ; preds = %2239, %2237
  %2280 = landingpad { ptr, i32 }
          cleanup
  br label %2283

2281:                                             ; preds = %2240
  %2282 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %176) #6
  br label %2283

2283:                                             ; preds = %2281, %2279
  %.pn1217 = phi { ptr, i32 } [ %2282, %2281 ], [ %2280, %2279 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %178) #6
  br label %2284

2284:                                             ; preds = %2283, %2277
  %.pn1217.pn = phi { ptr, i32 } [ %.pn1217, %2283 ], [ %2278, %2277 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %178) #6
  br label %2285

2285:                                             ; preds = %2284, %2275
  %.pn1217.pn.pn = phi { ptr, i32 } [ %.pn1217.pn, %2284 ], [ %2276, %2275 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %177) #6
  br label %2286

2286:                                             ; preds = %2285, %2273
  %.pn1217.pn.pn.pn = phi { ptr, i32 } [ %.pn1217.pn.pn, %2285 ], [ %2274, %2273 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %177) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %176) #6
  br label %.loopexit.split-lp

2287:                                             ; preds = %2242
  %2288 = landingpad { ptr, i32 }
          cleanup
  br label %2291

2289:                                             ; preds = %2243
  %2290 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %179) #6
  br label %2291

2291:                                             ; preds = %2289, %2287
  %.pn1222 = phi { ptr, i32 } [ %2290, %2289 ], [ %2288, %2287 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %179) #6
  br label %.loopexit.split-lp

2292:                                             ; preds = %2245
  %2293 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %180) #6
  br label %.loopexit.split-lp

2294:                                             ; preds = %2249
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2295 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2295:                                             ; preds = %2294
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %181) #6
  store i8 0, ptr %181, align 1, !tbaa !5
  %2296 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %181)
          to label %2297 unwind label %2322

2297:                                             ; preds = %2295
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %181) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2298 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2298:                                             ; preds = %2297
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %182) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %182, i32 noundef 288)
          to label %2299 unwind label %2324

2299:                                             ; preds = %2298
  %2300 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %182)
          to label %2301 unwind label %2326

2301:                                             ; preds = %2299
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %182) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %182) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %183) #6
  %2302 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 13, i32 noundef 7)
          to label %2303 unwind label %2329

2303:                                             ; preds = %2301
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %184) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %184, i32 noundef 0)
          to label %2304 unwind label %2331

2304:                                             ; preds = %2303
  %2305 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %2302, ptr noundef nonnull align 8 dereferenceable(8) %184)
          to label %2306 unwind label %2333

2306:                                             ; preds = %2304
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %183, ptr noundef nonnull align 1 dereferenceable(1) %2305)
          to label %2307 unwind label %2333

2307:                                             ; preds = %2306
  %2308 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %183)
          to label %2309 unwind label %2335

2309:                                             ; preds = %2307
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %183) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %184) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %184) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %183) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %185) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %185, i32 noundef 1)
          to label %2310 unwind label %2340

2310:                                             ; preds = %2309
  %2311 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %185)
          to label %2312 unwind label %2342

2312:                                             ; preds = %2310
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %185) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %185) #6
  %2313 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %2314 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2314:                                             ; preds = %2312
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %186) #6
  store i8 1, ptr %186, align 1, !tbaa !5
  %2315 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %186)
          to label %2316 unwind label %2345

2316:                                             ; preds = %2314
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %186) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1309 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1309:                                   ; preds = %2316, %2321
  %2317 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %2318 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2318:                                             ; preds = %.preheader1309
  %2319 = load i8, ptr %2317, align 1, !tbaa !5, !range !9, !noundef !10
  %2320 = trunc nuw i8 %2319 to i1
  br i1 %2320, label %2347, label %2321

2321:                                             ; preds = %2318
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1309 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !44

2322:                                             ; preds = %2295
  %2323 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %181) #6
  br label %.loopexit.split-lp

2324:                                             ; preds = %2298
  %2325 = landingpad { ptr, i32 }
          cleanup
  br label %2328

2326:                                             ; preds = %2299
  %2327 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %182) #6
  br label %2328

2328:                                             ; preds = %2326, %2324
  %.pn1224 = phi { ptr, i32 } [ %2327, %2326 ], [ %2325, %2324 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %182) #6
  br label %.loopexit.split-lp

2329:                                             ; preds = %2301
  %2330 = landingpad { ptr, i32 }
          cleanup
  br label %2339

2331:                                             ; preds = %2303
  %2332 = landingpad { ptr, i32 }
          cleanup
  br label %2338

2333:                                             ; preds = %2306, %2304
  %2334 = landingpad { ptr, i32 }
          cleanup
  br label %2337

2335:                                             ; preds = %2307
  %2336 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %183) #6
  br label %2337

2337:                                             ; preds = %2335, %2333
  %.pn1226 = phi { ptr, i32 } [ %2336, %2335 ], [ %2334, %2333 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %184) #6
  br label %2338

2338:                                             ; preds = %2337, %2331
  %.pn1226.pn = phi { ptr, i32 } [ %.pn1226, %2337 ], [ %2332, %2331 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %184) #6
  br label %2339

2339:                                             ; preds = %2338, %2329
  %.pn1226.pn.pn = phi { ptr, i32 } [ %.pn1226.pn, %2338 ], [ %2330, %2329 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %183) #6
  br label %.loopexit.split-lp

2340:                                             ; preds = %2309
  %2341 = landingpad { ptr, i32 }
          cleanup
  br label %2344

2342:                                             ; preds = %2310
  %2343 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %185) #6
  br label %2344

2344:                                             ; preds = %2342, %2340
  %.pn1230 = phi { ptr, i32 } [ %2343, %2342 ], [ %2341, %2340 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %185) #6
  br label %.loopexit.split-lp

2345:                                             ; preds = %2314
  %2346 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %186) #6
  br label %.loopexit.split-lp

2347:                                             ; preds = %2318
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2348 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2348:                                             ; preds = %2347
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %187) #6
  store i8 0, ptr %187, align 1, !tbaa !5
  %2349 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %187)
          to label %2350 unwind label %2351

2350:                                             ; preds = %2348
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %187) #6
  br label %.invoke2304

2351:                                             ; preds = %2348
  %2352 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %187) #6
  br label %.loopexit.split-lp

2353:                                             ; preds = %2026
  %2354 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %12)
  %.not1179 = icmp eq i64 %2354, 3
  br i1 %.not1179, label %2355, label %.invoke2324

2355:                                             ; preds = %2353
  %2356 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %11)
  %.not1180 = icmp eq i64 %2356, 1
  br i1 %.not1180, label %2357, label %.invoke2324

2357:                                             ; preds = %2355
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2358 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2358:                                             ; preds = %2357
  %2359 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %27, ptr noundef nonnull align 8 dereferenceable(24) %27)
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %188) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %188, i32 noundef 10)
          to label %2360 unwind label %2383

2360:                                             ; preds = %2358
  %2361 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %188)
          to label %2362 unwind label %2385

2362:                                             ; preds = %2360
  %2363 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %2361)
          to label %2364 unwind label %2385

2364:                                             ; preds = %2362
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %188) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %188) #6
  %2365 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %2366 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2366:                                             ; preds = %2364
  %2367 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %2368 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2368:                                             ; preds = %2366
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %189) #6
  store i8 1, ptr %189, align 1, !tbaa !5
  %2369 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %189)
          to label %2370 unwind label %2388

2370:                                             ; preds = %2368
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %189) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %190) #6
  store i8 1, ptr %190, align 1, !tbaa !5
  %2371 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %190)
          to label %2372 unwind label %2390

2372:                                             ; preds = %2370
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %190) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1337 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1337:                                   ; preds = %2372, %2394
  %2373 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %2374 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2374:                                             ; preds = %.preheader1337
  %2375 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %2373)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %191) #6
  store i8 0, ptr %191, align 1, !tbaa !5
  %2376 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %191)
          to label %2377 unwind label %2392

2377:                                             ; preds = %2374
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %191) #6
  %2378 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %2379 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2379:                                             ; preds = %2377
  %2380 = load i8, ptr %2378, align 1, !tbaa !5, !range !9, !noundef !10
  %2381 = trunc nuw i8 %2380 to i1
  br i1 %2381, label %2382, label %2394

2382:                                             ; preds = %2379
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2395 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2383:                                             ; preds = %2358
  %2384 = landingpad { ptr, i32 }
          cleanup
  br label %2387

2385:                                             ; preds = %2362, %2360
  %2386 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %188) #6
  br label %2387

2387:                                             ; preds = %2385, %2383
  %.pn1181 = phi { ptr, i32 } [ %2386, %2385 ], [ %2384, %2383 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %188) #6
  br label %.loopexit.split-lp

2388:                                             ; preds = %2368
  %2389 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %189) #6
  br label %.loopexit.split-lp

2390:                                             ; preds = %2370
  %2391 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %190) #6
  br label %.loopexit.split-lp

2392:                                             ; preds = %2374
  %2393 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %191) #6
  br label %.loopexit.split-lp

2394:                                             ; preds = %2379
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1337 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !45

2395:                                             ; preds = %2382
  %2396 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 4, i32 noundef 0)
          to label %2397 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2397:                                             ; preds = %2395
  %2398 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %24, ptr noundef nonnull align 8 dereferenceable(28) %2396)
  %2399 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %24)
  %2400 = add nsw i64 %2399, 1
  %2401 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %25, i64 noundef %2400)
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %192) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %192, i32 noundef 11)
          to label %2402 unwind label %2425

2402:                                             ; preds = %2397
  %2403 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %192)
          to label %2404 unwind label %2427

2404:                                             ; preds = %2402
  %2405 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %2403)
          to label %2406 unwind label %2427

2406:                                             ; preds = %2404
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %192) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %192) #6
  %2407 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %2408 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2408:                                             ; preds = %2406
  %2409 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %2410 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2410:                                             ; preds = %2408
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %193) #6
  store i8 1, ptr %193, align 1, !tbaa !5
  %2411 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %193)
          to label %2412 unwind label %2430

2412:                                             ; preds = %2410
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %193) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %194) #6
  store i8 1, ptr %194, align 1, !tbaa !5
  %2413 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %194)
          to label %2414 unwind label %2432

2414:                                             ; preds = %2412
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %194) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1333 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1333:                                   ; preds = %2414, %2436
  %2415 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %2416 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2416:                                             ; preds = %.preheader1333
  %2417 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %2415)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %195) #6
  store i8 0, ptr %195, align 1, !tbaa !5
  %2418 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %195)
          to label %2419 unwind label %2434

2419:                                             ; preds = %2416
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %195) #6
  %2420 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %2421 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2421:                                             ; preds = %2419
  %2422 = load i8, ptr %2420, align 1, !tbaa !5, !range !9, !noundef !10
  %2423 = trunc nuw i8 %2422 to i1
  br i1 %2423, label %2424, label %2436

2424:                                             ; preds = %2421
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2437 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2425:                                             ; preds = %2397
  %2426 = landingpad { ptr, i32 }
          cleanup
  br label %2429

2427:                                             ; preds = %2404, %2402
  %2428 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %192) #6
  br label %2429

2429:                                             ; preds = %2427, %2425
  %.pn1183 = phi { ptr, i32 } [ %2428, %2427 ], [ %2426, %2425 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %192) #6
  br label %.loopexit.split-lp

2430:                                             ; preds = %2410
  %2431 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %193) #6
  br label %.loopexit.split-lp

2432:                                             ; preds = %2412
  %2433 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %194) #6
  br label %.loopexit.split-lp

2434:                                             ; preds = %2416
  %2435 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %195) #6
  br label %.loopexit.split-lp

2436:                                             ; preds = %2421
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1333 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !46

2437:                                             ; preds = %2424
  %2438 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %2, ptr noundef nonnull align 8 dereferenceable(24) %3)
  %2439 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 9)
          to label %2440 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2440:                                             ; preds = %2437
  %2441 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %2442 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2442:                                             ; preds = %2440
  %2443 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %2444 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2444:                                             ; preds = %2442
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %196) #6
  store i8 0, ptr %196, align 1, !tbaa !5
  %2445 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %196)
          to label %2446 unwind label %2456

2446:                                             ; preds = %2444
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %196) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %197) #6
  store i8 1, ptr %197, align 1, !tbaa !5
  %2447 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %197)
          to label %2448 unwind label %2458

2448:                                             ; preds = %2446
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %197) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1330 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1330:                                   ; preds = %2448, %2462
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %198) #6
  store i8 0, ptr %198, align 1, !tbaa !5
  %2449 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %198)
          to label %2450 unwind label %2460

2450:                                             ; preds = %.preheader1330
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %198) #6
  %2451 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %2452 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2452:                                             ; preds = %2450
  %2453 = load i8, ptr %2451, align 1, !tbaa !5, !range !9, !noundef !10
  %2454 = trunc nuw i8 %2453 to i1
  br i1 %2454, label %2455, label %2462

2455:                                             ; preds = %2452
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2463 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2456:                                             ; preds = %2444
  %2457 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %196) #6
  br label %.loopexit.split-lp

2458:                                             ; preds = %2446
  %2459 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %197) #6
  br label %.loopexit.split-lp

2460:                                             ; preds = %.preheader1330
  %2461 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %198) #6
  br label %.loopexit.split-lp

2462:                                             ; preds = %2452
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1330 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !47

2463:                                             ; preds = %2455
  %2464 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %2)
  %2465 = add nsw i64 %2464, 32
  %2466 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %2, i64 noundef %2465)
  %2467 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 17)
          to label %2468 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2468:                                             ; preds = %2463
  %2469 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %2470 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2470:                                             ; preds = %2468
  %2471 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %2472 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2472:                                             ; preds = %2470
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %199) #6
  store i8 0, ptr %199, align 1, !tbaa !5
  %2473 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %199)
          to label %2474 unwind label %2483

2474:                                             ; preds = %2472
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %199) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %200) #6
  store i8 1, ptr %200, align 1, !tbaa !5
  %2475 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %200)
          to label %2476 unwind label %2485

2476:                                             ; preds = %2474
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %200) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1326 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1326:                                   ; preds = %2476, %2489
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %201) #6
  store i8 0, ptr %201, align 1, !tbaa !5
  %2477 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %201)
          to label %2478 unwind label %2487

2478:                                             ; preds = %.preheader1326
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %201) #6
  %2479 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %2480 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2480:                                             ; preds = %2478
  %2481 = load i8, ptr %2479, align 1, !tbaa !5, !range !9, !noundef !10
  %2482 = trunc nuw i8 %2481 to i1
  br i1 %2482, label %.invoke2303, label %2489

2483:                                             ; preds = %2472
  %2484 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %199) #6
  br label %.loopexit.split-lp

2485:                                             ; preds = %2474
  %2486 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %200) #6
  br label %.loopexit.split-lp

2487:                                             ; preds = %.preheader1326
  %2488 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %201) #6
  br label %.loopexit.split-lp

2489:                                             ; preds = %2480
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1326 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !48

2490:                                             ; preds = %2026, %2026, %2026
  %2491 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %12)
  %.not1177 = icmp eq i64 %2491, 3
  br i1 %.not1177, label %2492, label %.invoke2324

2492:                                             ; preds = %2490
  %2493 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %11)
  %.not1178 = icmp eq i64 %2493, 0
  br i1 %.not1178, label %2494, label %.invoke2324

2494:                                             ; preds = %2492
  %2495 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %27, ptr noundef nonnull align 8 dereferenceable(24) %27)
  br label %.invoke2303

2496:                                             ; preds = %2026
  %2497 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %12)
  %.not1176 = icmp eq i64 %2497, 3
  br i1 %.not1176, label %2498, label %.invoke2324

2498:                                             ; preds = %2496
  %2499 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %11)
  %2500 = icmp eq i64 %2499, 0
  br i1 %2500, label %.invoke2324, label %2501

2501:                                             ; preds = %2498
  %2502 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %27, ptr noundef nonnull align 8 dereferenceable(24) %27)
  br label %.invoke2303

2503:                                             ; preds = %2026
  %2504 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %12)
  %.not1148 = icmp eq i64 %2504, 3
  br i1 %.not1148, label %2505, label %.invoke2324

2505:                                             ; preds = %2503
  %2506 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %11)
  %2507 = icmp eq i64 %2506, 0
  br i1 %2507, label %.invoke2324, label %2508

2508:                                             ; preds = %2505
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2509 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2509:                                             ; preds = %2508
  %2510 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %27, ptr noundef nonnull align 8 dereferenceable(24) %27)
  %2511 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 0)
          to label %2512 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2512:                                             ; preds = %2509
  %2513 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %2511)
          to label %2514 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2514:                                             ; preds = %2512
  %2515 = icmp eq i64 %2513, 1
  br i1 %2515, label %2516, label %2518

2516:                                             ; preds = %2514
  %2517 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 10)
          to label %.invoke2317 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2518:                                             ; preds = %2514
  %2519 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 11)
          to label %.invoke2317 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.invoke2317:                                      ; preds = %2518, %2516
  %2520 = phi i32 [ 272, %2516 ], [ 288, %2518 ]
  %2521 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %6, i32 noundef %2520)
          to label %2522 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2522:                                             ; preds = %.invoke2317
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %202) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %203) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %203, i32 noundef 0)
          to label %2523 unwind label %2551

2523:                                             ; preds = %2522
  %2524 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %203)
          to label %2525 unwind label %2553

2525:                                             ; preds = %2523
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %202, ptr noundef nonnull align 1 dereferenceable(1) %2524)
          to label %2526 unwind label %2553

2526:                                             ; preds = %2525
  %2527 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %202)
          to label %2528 unwind label %2555

2528:                                             ; preds = %2526
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %202) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %203) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %203) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %202) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %204) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %204, i32 noundef 0)
          to label %2529 unwind label %2559

2529:                                             ; preds = %2528
  %2530 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %204)
          to label %2531 unwind label %2561

2531:                                             ; preds = %2529
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %204) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %204) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %205) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %206) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %206, i32 noundef 0)
          to label %2532 unwind label %2564

2532:                                             ; preds = %2531
  %2533 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %206, ptr noundef nonnull align 8 dereferenceable(8) %11)
          to label %2534 unwind label %2566

2534:                                             ; preds = %2532
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %207) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %207, i32 noundef 0)
          to label %2535 unwind label %2568

2535:                                             ; preds = %2534
  %2536 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %2533, ptr noundef nonnull align 8 dereferenceable(8) %207)
          to label %2537 unwind label %2570

2537:                                             ; preds = %2535
  invoke void @_ZN5sc_dt6sc_intILi7EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %205, ptr noundef nonnull align 1 dereferenceable(1) %2536)
          to label %2538 unwind label %2570

2538:                                             ; preds = %2537
  %2539 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %205)
          to label %2540 unwind label %2572

2540:                                             ; preds = %2538
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %205) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %207) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %207) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %206) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %206) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %205) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %208) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %208, i32 noundef -3)
          to label %2541 unwind label %2578

2541:                                             ; preds = %2540
  %2542 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %208)
          to label %2543 unwind label %2580

2543:                                             ; preds = %2541
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %208) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %208) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %209) #6
  store i8 1, ptr %209, align 1, !tbaa !5
  %2544 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %209)
          to label %2545 unwind label %2583

2545:                                             ; preds = %2543
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %209) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1354 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1354:                                   ; preds = %2545, %2550
  %2546 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %2547 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2547:                                             ; preds = %.preheader1354
  %2548 = load i8, ptr %2546, align 1, !tbaa !5, !range !9, !noundef !10
  %2549 = trunc nuw i8 %2548 to i1
  br i1 %2549, label %2585, label %2550

2550:                                             ; preds = %2547
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1354 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !49

2551:                                             ; preds = %2522
  %2552 = landingpad { ptr, i32 }
          cleanup
  br label %2558

2553:                                             ; preds = %2525, %2523
  %2554 = landingpad { ptr, i32 }
          cleanup
  br label %2557

2555:                                             ; preds = %2526
  %2556 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %202) #6
  br label %2557

2557:                                             ; preds = %2555, %2553
  %.pn1149 = phi { ptr, i32 } [ %2556, %2555 ], [ %2554, %2553 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %203) #6
  br label %2558

2558:                                             ; preds = %2557, %2551
  %.pn1149.pn = phi { ptr, i32 } [ %.pn1149, %2557 ], [ %2552, %2551 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %203) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %202) #6
  br label %.loopexit.split-lp

2559:                                             ; preds = %2528
  %2560 = landingpad { ptr, i32 }
          cleanup
  br label %2563

2561:                                             ; preds = %2529
  %2562 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %204) #6
  br label %2563

2563:                                             ; preds = %2561, %2559
  %.pn1152 = phi { ptr, i32 } [ %2562, %2561 ], [ %2560, %2559 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %204) #6
  br label %.loopexit.split-lp

2564:                                             ; preds = %2531
  %2565 = landingpad { ptr, i32 }
          cleanup
  br label %2577

2566:                                             ; preds = %2532
  %2567 = landingpad { ptr, i32 }
          cleanup
  br label %2576

2568:                                             ; preds = %2534
  %2569 = landingpad { ptr, i32 }
          cleanup
  br label %2575

2570:                                             ; preds = %2537, %2535
  %2571 = landingpad { ptr, i32 }
          cleanup
  br label %2574

2572:                                             ; preds = %2538
  %2573 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %205) #6
  br label %2574

2574:                                             ; preds = %2572, %2570
  %.pn1154 = phi { ptr, i32 } [ %2573, %2572 ], [ %2571, %2570 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %207) #6
  br label %2575

2575:                                             ; preds = %2574, %2568
  %.pn1154.pn = phi { ptr, i32 } [ %.pn1154, %2574 ], [ %2569, %2568 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %207) #6
  br label %2576

2576:                                             ; preds = %2575, %2566
  %.pn1154.pn.pn = phi { ptr, i32 } [ %.pn1154.pn, %2575 ], [ %2567, %2566 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %206) #6
  br label %2577

2577:                                             ; preds = %2576, %2564
  %.pn1154.pn.pn.pn = phi { ptr, i32 } [ %.pn1154.pn.pn, %2576 ], [ %2565, %2564 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %206) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %205) #6
  br label %.loopexit.split-lp

2578:                                             ; preds = %2540
  %2579 = landingpad { ptr, i32 }
          cleanup
  br label %2582

2580:                                             ; preds = %2541
  %2581 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %208) #6
  br label %2582

2582:                                             ; preds = %2580, %2578
  %.pn1159 = phi { ptr, i32 } [ %2581, %2580 ], [ %2579, %2578 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %208) #6
  br label %.loopexit.split-lp

2583:                                             ; preds = %2543
  %2584 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %209) #6
  br label %.loopexit.split-lp

2585:                                             ; preds = %2547
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2586 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2586:                                             ; preds = %2585
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %210) #6
  store i8 0, ptr %210, align 1, !tbaa !5
  %2587 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %210)
          to label %2588 unwind label %2608

2588:                                             ; preds = %2586
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %210) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2589 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2589:                                             ; preds = %2588
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %211) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %211, i32 noundef 451)
          to label %2590 unwind label %2610

2590:                                             ; preds = %2589
  %2591 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %211)
          to label %2592 unwind label %2612

2592:                                             ; preds = %2590
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %211) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %211) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %212) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %212, i32 noundef 0)
          to label %2593 unwind label %2615

2593:                                             ; preds = %2592
  %2594 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %212)
          to label %2595 unwind label %2617

2595:                                             ; preds = %2593
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %212) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %212) #6
  %2596 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %23)
          to label %2597 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2597:                                             ; preds = %2595
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %213) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %213, i32 noundef -2)
          to label %2598 unwind label %2620

2598:                                             ; preds = %2597
  %2599 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %213)
          to label %2600 unwind label %2622

2600:                                             ; preds = %2598
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %213) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %213) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %214) #6
  store i8 1, ptr %214, align 1, !tbaa !5
  %2601 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %214)
          to label %2602 unwind label %2625

2602:                                             ; preds = %2600
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %214) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1351 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1351:                                   ; preds = %2602, %2607
  %2603 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %2604 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2604:                                             ; preds = %.preheader1351
  %2605 = load i8, ptr %2603, align 1, !tbaa !5, !range !9, !noundef !10
  %2606 = trunc nuw i8 %2605 to i1
  br i1 %2606, label %2627, label %2607

2607:                                             ; preds = %2604
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1351 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !50

2608:                                             ; preds = %2586
  %2609 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %210) #6
  br label %.loopexit.split-lp

2610:                                             ; preds = %2589
  %2611 = landingpad { ptr, i32 }
          cleanup
  br label %2614

2612:                                             ; preds = %2590
  %2613 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %211) #6
  br label %2614

2614:                                             ; preds = %2612, %2610
  %.pn1161 = phi { ptr, i32 } [ %2613, %2612 ], [ %2611, %2610 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %211) #6
  br label %.loopexit.split-lp

2615:                                             ; preds = %2592
  %2616 = landingpad { ptr, i32 }
          cleanup
  br label %2619

2617:                                             ; preds = %2593
  %2618 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %212) #6
  br label %2619

2619:                                             ; preds = %2617, %2615
  %.pn1163 = phi { ptr, i32 } [ %2618, %2617 ], [ %2616, %2615 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %212) #6
  br label %.loopexit.split-lp

2620:                                             ; preds = %2597
  %2621 = landingpad { ptr, i32 }
          cleanup
  br label %2624

2622:                                             ; preds = %2598
  %2623 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %213) #6
  br label %2624

2624:                                             ; preds = %2622, %2620
  %.pn1165 = phi { ptr, i32 } [ %2623, %2622 ], [ %2621, %2620 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %213) #6
  br label %.loopexit.split-lp

2625:                                             ; preds = %2600
  %2626 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %214) #6
  br label %.loopexit.split-lp

2627:                                             ; preds = %2604
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2628 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2628:                                             ; preds = %2627
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %215) #6
  store i8 0, ptr %215, align 1, !tbaa !5
  %2629 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %215)
          to label %2630 unwind label %2654

2630:                                             ; preds = %2628
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %215) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2631 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2631:                                             ; preds = %2630
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %216) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %216, i32 noundef 11)
          to label %2632 unwind label %2656

2632:                                             ; preds = %2631
  %2633 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %216)
          to label %2634 unwind label %2658

2634:                                             ; preds = %2632
  %2635 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %2633)
          to label %2636 unwind label %2658

2636:                                             ; preds = %2634
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %216) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %216) #6
  %2637 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef 1)
          to label %2638 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2638:                                             ; preds = %2636
  %2639 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %2640 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2640:                                             ; preds = %2638
  %2641 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %2642 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2642:                                             ; preds = %2640
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %217) #6
  store i8 0, ptr %217, align 1, !tbaa !5
  %2643 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %217)
          to label %2644 unwind label %2661

2644:                                             ; preds = %2642
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %217) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %218) #6
  store i8 1, ptr %218, align 1, !tbaa !5
  %2645 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %218)
          to label %2646 unwind label %2663

2646:                                             ; preds = %2644
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %218) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1347 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1347:                                   ; preds = %2646, %2667
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %219) #6
  store i8 0, ptr %219, align 1, !tbaa !5
  %2647 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %219)
          to label %2648 unwind label %2665

2648:                                             ; preds = %.preheader1347
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %219) #6
  %2649 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %2650 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2650:                                             ; preds = %2648
  %2651 = load i8, ptr %2649, align 1, !tbaa !5, !range !9, !noundef !10
  %2652 = trunc nuw i8 %2651 to i1
  br i1 %2652, label %2653, label %2667

2653:                                             ; preds = %2650
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2668 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2654:                                             ; preds = %2628
  %2655 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %215) #6
  br label %.loopexit.split-lp

2656:                                             ; preds = %2631
  %2657 = landingpad { ptr, i32 }
          cleanup
  br label %2660

2658:                                             ; preds = %2634, %2632
  %2659 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %216) #6
  br label %2660

2660:                                             ; preds = %2658, %2656
  %.pn1167 = phi { ptr, i32 } [ %2659, %2658 ], [ %2657, %2656 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %216) #6
  br label %.loopexit.split-lp

2661:                                             ; preds = %2642
  %2662 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %217) #6
  br label %.loopexit.split-lp

2663:                                             ; preds = %2644
  %2664 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %218) #6
  br label %.loopexit.split-lp

2665:                                             ; preds = %.preheader1347
  %2666 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %219) #6
  br label %.loopexit.split-lp

2667:                                             ; preds = %2650
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1347 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !51

2668:                                             ; preds = %2653
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %220) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %220, i32 noundef 12)
          to label %2669 unwind label %2691

2669:                                             ; preds = %2668
  %2670 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %220)
          to label %2671 unwind label %2693

2671:                                             ; preds = %2669
  %2672 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %2670)
          to label %2673 unwind label %2693

2673:                                             ; preds = %2671
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %220) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %220) #6
  %2674 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef 0)
          to label %2675 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2675:                                             ; preds = %2673
  %2676 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %2677 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2677:                                             ; preds = %2675
  %2678 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %2679 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2679:                                             ; preds = %2677
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %221) #6
  store i8 0, ptr %221, align 1, !tbaa !5
  %2680 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %221)
          to label %2681 unwind label %2696

2681:                                             ; preds = %2679
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %221) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %222) #6
  store i8 1, ptr %222, align 1, !tbaa !5
  %2682 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %222)
          to label %2683 unwind label %2698

2683:                                             ; preds = %2681
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %222) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1344 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1344:                                   ; preds = %2683, %2702
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %223) #6
  store i8 0, ptr %223, align 1, !tbaa !5
  %2684 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %223)
          to label %2685 unwind label %2700

2685:                                             ; preds = %.preheader1344
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %223) #6
  %2686 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %2687 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2687:                                             ; preds = %2685
  %2688 = load i8, ptr %2686, align 1, !tbaa !5, !range !9, !noundef !10
  %2689 = trunc nuw i8 %2688 to i1
  br i1 %2689, label %2690, label %2702

2690:                                             ; preds = %2687
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2703 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2691:                                             ; preds = %2668
  %2692 = landingpad { ptr, i32 }
          cleanup
  br label %2695

2693:                                             ; preds = %2671, %2669
  %2694 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %220) #6
  br label %2695

2695:                                             ; preds = %2693, %2691
  %.pn1169 = phi { ptr, i32 } [ %2694, %2693 ], [ %2692, %2691 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %220) #6
  br label %.loopexit.split-lp

2696:                                             ; preds = %2679
  %2697 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %221) #6
  br label %.loopexit.split-lp

2698:                                             ; preds = %2681
  %2699 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %222) #6
  br label %.loopexit.split-lp

2700:                                             ; preds = %.preheader1344
  %2701 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %223) #6
  br label %.loopexit.split-lp

2702:                                             ; preds = %2687
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1344 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !52

2703:                                             ; preds = %2690
  %2704 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %6)
          to label %2705 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2705:                                             ; preds = %2703
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %224) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %225) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %225, i32 noundef 0)
          to label %2706 unwind label %2724

2706:                                             ; preds = %2705
  %2707 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %225)
          to label %2708 unwind label %2726

2708:                                             ; preds = %2706
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %224, ptr noundef nonnull align 1 dereferenceable(1) %2707)
          to label %2709 unwind label %2726

2709:                                             ; preds = %2708
  %2710 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %224)
          to label %2711 unwind label %2728

2711:                                             ; preds = %2709
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %224) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %225) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %225) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %224) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %226) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %226, i32 noundef 1)
          to label %2712 unwind label %2732

2712:                                             ; preds = %2711
  %2713 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %226)
          to label %2714 unwind label %2734

2714:                                             ; preds = %2712
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %226) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %226) #6
  %2715 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %2716 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2716:                                             ; preds = %2714
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %227) #6
  store i8 1, ptr %227, align 1, !tbaa !5
  %2717 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %227)
          to label %2718 unwind label %2737

2718:                                             ; preds = %2716
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %227) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1340 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1340:                                   ; preds = %2718, %2723
  %2719 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %2720 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2720:                                             ; preds = %.preheader1340
  %2721 = load i8, ptr %2719, align 1, !tbaa !5, !range !9, !noundef !10
  %2722 = trunc nuw i8 %2721 to i1
  br i1 %2722, label %2739, label %2723

2723:                                             ; preds = %2720
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1340 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !53

2724:                                             ; preds = %2705
  %2725 = landingpad { ptr, i32 }
          cleanup
  br label %2731

2726:                                             ; preds = %2708, %2706
  %2727 = landingpad { ptr, i32 }
          cleanup
  br label %2730

2728:                                             ; preds = %2709
  %2729 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %224) #6
  br label %2730

2730:                                             ; preds = %2728, %2726
  %.pn1171 = phi { ptr, i32 } [ %2729, %2728 ], [ %2727, %2726 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %225) #6
  br label %2731

2731:                                             ; preds = %2730, %2724
  %.pn1171.pn = phi { ptr, i32 } [ %.pn1171, %2730 ], [ %2725, %2724 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %225) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %224) #6
  br label %.loopexit.split-lp

2732:                                             ; preds = %2711
  %2733 = landingpad { ptr, i32 }
          cleanup
  br label %2736

2734:                                             ; preds = %2712
  %2735 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %226) #6
  br label %2736

2736:                                             ; preds = %2734, %2732
  %.pn1174 = phi { ptr, i32 } [ %2735, %2734 ], [ %2733, %2732 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %226) #6
  br label %.loopexit.split-lp

2737:                                             ; preds = %2716
  %2738 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %227) #6
  br label %.loopexit.split-lp

2739:                                             ; preds = %2720
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2740 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2740:                                             ; preds = %2739
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %228) #6
  store i8 0, ptr %228, align 1, !tbaa !5
  %2741 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %228)
          to label %2742 unwind label %2743

2742:                                             ; preds = %2740
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %228) #6
  br label %.invoke2304

2743:                                             ; preds = %2740
  %2744 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %228) #6
  br label %.loopexit.split-lp

2745:                                             ; preds = %2026
  %2746 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %12)
  %.not1067 = icmp eq i64 %2746, 3
  br i1 %.not1067, label %2747, label %2750

2747:                                             ; preds = %2745
  %2748 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %11)
  %2749 = icmp eq i64 %2748, 0
  br i1 %2749, label %2750, label %2753

2750:                                             ; preds = %2747, %2745
  %2751 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %27, i32 noundef 1)
          to label %2752 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2752:                                             ; preds = %2750
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2894 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2753:                                             ; preds = %2747
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2754 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2754:                                             ; preds = %2753
  %2755 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %27, ptr noundef nonnull align 8 dereferenceable(24) %27)
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %229) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %229, i32 noundef 10)
          to label %2756 unwind label %2779

2756:                                             ; preds = %2754
  %2757 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %229)
          to label %2758 unwind label %2781

2758:                                             ; preds = %2756
  %2759 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %2757)
          to label %2760 unwind label %2781

2760:                                             ; preds = %2758
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %229) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %229) #6
  %2761 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %2762 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2762:                                             ; preds = %2760
  %2763 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %2764 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2764:                                             ; preds = %2762
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %230) #6
  store i8 1, ptr %230, align 1, !tbaa !5
  %2765 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %230)
          to label %2766 unwind label %2784

2766:                                             ; preds = %2764
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %230) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %231) #6
  store i8 1, ptr %231, align 1, !tbaa !5
  %2767 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %231)
          to label %2768 unwind label %2786

2768:                                             ; preds = %2766
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %231) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1442 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1442:                                   ; preds = %2768, %2790
  %2769 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %2770 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2770:                                             ; preds = %.preheader1442
  %2771 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %2769)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %232) #6
  store i8 0, ptr %232, align 1, !tbaa !5
  %2772 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %232)
          to label %2773 unwind label %2788

2773:                                             ; preds = %2770
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %232) #6
  %2774 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %2775 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2775:                                             ; preds = %2773
  %2776 = load i8, ptr %2774, align 1, !tbaa !5, !range !9, !noundef !10
  %2777 = trunc nuw i8 %2776 to i1
  br i1 %2777, label %2778, label %2790

2778:                                             ; preds = %2775
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2791 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2779:                                             ; preds = %2754
  %2780 = landingpad { ptr, i32 }
          cleanup
  br label %2783

2781:                                             ; preds = %2758, %2756
  %2782 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %229) #6
  br label %2783

2783:                                             ; preds = %2781, %2779
  %.pn1068 = phi { ptr, i32 } [ %2782, %2781 ], [ %2780, %2779 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %229) #6
  br label %.loopexit.split-lp

2784:                                             ; preds = %2764
  %2785 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %230) #6
  br label %.loopexit.split-lp

2786:                                             ; preds = %2766
  %2787 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %231) #6
  br label %.loopexit.split-lp

2788:                                             ; preds = %2770
  %2789 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %232) #6
  br label %.loopexit.split-lp

2790:                                             ; preds = %2775
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1442 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !54

2791:                                             ; preds = %2778
  %2792 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 7, i32 noundef 0)
          to label %2793 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2793:                                             ; preds = %2791
  %2794 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %21, ptr noundef nonnull align 8 dereferenceable(28) %2792)
  %2795 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 0)
          to label %2796 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2796:                                             ; preds = %2793
  %2797 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %2795)
          to label %2798 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2798:                                             ; preds = %2796
  %2799 = icmp eq i64 %2797, 1
  br i1 %2799, label %2800, label %2828

2800:                                             ; preds = %2798
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %233) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %233, i32 noundef 2)
          to label %2801 unwind label %2818

2801:                                             ; preds = %2800
  %2802 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %21, i32 noundef 4, i32 noundef 0)
          to label %2803 unwind label %2820

2803:                                             ; preds = %2801
  %2804 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %233, ptr noundef nonnull align 8 dereferenceable(8) %2802)
          to label %2805 unwind label %2820

2805:                                             ; preds = %2803
  %2806 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %21, ptr noundef nonnull align 1 dereferenceable(1) %2804)
          to label %2807 unwind label %2820

2807:                                             ; preds = %2805
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %233) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %233) #6
  %2808 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 10)
          to label %2809 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2809:                                             ; preds = %2807
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %234) #6
  invoke void @_ZN5sc_dt6sc_intILi9EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %234, i32 noundef 4)
          to label %2810 unwind label %2823

2810:                                             ; preds = %2809
  %2811 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %21, i32 noundef 4, i32 noundef 0)
          to label %2812 unwind label %2825

2812:                                             ; preds = %2810
  %2813 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %234, ptr noundef nonnull align 8 dereferenceable(8) %2811)
          to label %2814 unwind label %2825

2814:                                             ; preds = %2812
  %2815 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %6, ptr noundef nonnull align 1 dereferenceable(1) %2813)
          to label %2816 unwind label %2825

2816:                                             ; preds = %2814
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %234) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %234) #6
  %2817 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %7, i32 noundef 9)
          to label %.invoke2316 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2818:                                             ; preds = %2800
  %2819 = landingpad { ptr, i32 }
          cleanup
  br label %2822

2820:                                             ; preds = %2805, %2803, %2801
  %2821 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %233) #6
  br label %2822

2822:                                             ; preds = %2820, %2818
  %.pn1074 = phi { ptr, i32 } [ %2821, %2820 ], [ %2819, %2818 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %233) #6
  br label %.loopexit.split-lp

2823:                                             ; preds = %2809
  %2824 = landingpad { ptr, i32 }
          cleanup
  br label %2827

2825:                                             ; preds = %2814, %2812, %2810
  %2826 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %234) #6
  br label %2827

2827:                                             ; preds = %2825, %2823
  %.pn1076 = phi { ptr, i32 } [ %2826, %2825 ], [ %2824, %2823 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %234) #6
  br label %.loopexit.split-lp

2828:                                             ; preds = %2798
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %235) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %235, i32 noundef 3)
          to label %2829 unwind label %2848

2829:                                             ; preds = %2828
  %2830 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %21, i32 noundef 4, i32 noundef 0)
          to label %2831 unwind label %2850

2831:                                             ; preds = %2829
  %2832 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %235, ptr noundef nonnull align 8 dereferenceable(8) %2830)
          to label %2833 unwind label %2850

2833:                                             ; preds = %2831
  %2834 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %21, ptr noundef nonnull align 1 dereferenceable(1) %2832)
          to label %2835 unwind label %2850

2835:                                             ; preds = %2833
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %235) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %235) #6
  %2836 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 11)
          to label %2837 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2837:                                             ; preds = %2835
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %236) #6
  invoke void @_ZN5sc_dt6sc_intILi9EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %236, i32 noundef 5)
          to label %2838 unwind label %2853

2838:                                             ; preds = %2837
  %2839 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %21, i32 noundef 4, i32 noundef 0)
          to label %2840 unwind label %2855

2840:                                             ; preds = %2838
  %2841 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %236, ptr noundef nonnull align 8 dereferenceable(8) %2839)
          to label %2842 unwind label %2855

2842:                                             ; preds = %2840
  %2843 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %6, ptr noundef nonnull align 1 dereferenceable(1) %2841)
          to label %2844 unwind label %2855

2844:                                             ; preds = %2842
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %236) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %236) #6
  %2845 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %7, i32 noundef 17)
          to label %.invoke2316 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.invoke2316:                                      ; preds = %2844, %2816
  %2846 = phi i32 [ 272, %2816 ], [ 288, %2844 ]
  %2847 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef %2846)
          to label %2858 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2848:                                             ; preds = %2828
  %2849 = landingpad { ptr, i32 }
          cleanup
  br label %2852

2850:                                             ; preds = %2833, %2831, %2829
  %2851 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %235) #6
  br label %2852

2852:                                             ; preds = %2850, %2848
  %.pn1070 = phi { ptr, i32 } [ %2851, %2850 ], [ %2849, %2848 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %235) #6
  br label %.loopexit.split-lp

2853:                                             ; preds = %2837
  %2854 = landingpad { ptr, i32 }
          cleanup
  br label %2857

2855:                                             ; preds = %2842, %2840, %2838
  %2856 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %236) #6
  br label %2857

2857:                                             ; preds = %2855, %2853
  %.pn1072 = phi { ptr, i32 } [ %2856, %2855 ], [ %2854, %2853 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %236) #6
  br label %.loopexit.split-lp

2858:                                             ; preds = %.invoke2316
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %237) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %237, i32 noundef 11)
          to label %2859 unwind label %2882

2859:                                             ; preds = %2858
  %2860 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %237)
          to label %2861 unwind label %2884

2861:                                             ; preds = %2859
  %2862 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %2860)
          to label %2863 unwind label %2884

2863:                                             ; preds = %2861
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %237) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %237) #6
  %2864 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %2865 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2865:                                             ; preds = %2863
  %2866 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %2867 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2867:                                             ; preds = %2865
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %238) #6
  store i8 1, ptr %238, align 1, !tbaa !5
  %2868 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %238)
          to label %2869 unwind label %2887

2869:                                             ; preds = %2867
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %238) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %239) #6
  store i8 1, ptr %239, align 1, !tbaa !5
  %2870 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %239)
          to label %2871 unwind label %2889

2871:                                             ; preds = %2869
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %239) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1438 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1438:                                   ; preds = %2871, %2893
  %2872 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %2873 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2873:                                             ; preds = %.preheader1438
  %2874 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %2872)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %240) #6
  store i8 0, ptr %240, align 1, !tbaa !5
  %2875 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %240)
          to label %2876 unwind label %2891

2876:                                             ; preds = %2873
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %240) #6
  %2877 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %2878 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2878:                                             ; preds = %2876
  %2879 = load i8, ptr %2877, align 1, !tbaa !5, !range !9, !noundef !10
  %2880 = trunc nuw i8 %2879 to i1
  br i1 %2880, label %2881, label %2893

2881:                                             ; preds = %2878
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2894 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2882:                                             ; preds = %2858
  %2883 = landingpad { ptr, i32 }
          cleanup
  br label %2886

2884:                                             ; preds = %2861, %2859
  %2885 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %237) #6
  br label %2886

2886:                                             ; preds = %2884, %2882
  %.pn1078 = phi { ptr, i32 } [ %2885, %2884 ], [ %2883, %2882 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %237) #6
  br label %.loopexit.split-lp

2887:                                             ; preds = %2867
  %2888 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %238) #6
  br label %.loopexit.split-lp

2889:                                             ; preds = %2869
  %2890 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %239) #6
  br label %.loopexit.split-lp

2891:                                             ; preds = %2873
  %2892 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %240) #6
  br label %.loopexit.split-lp

2893:                                             ; preds = %2878
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1438 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !55

2894:                                             ; preds = %2881, %2752
  %.0 = phi i1 [ true, %2752 ], [ false, %2881 ]
  %2895 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %3)
  %2896 = trunc i64 %2895 to i32
  %2897 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi32EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %29, i32 noundef %2896)
          to label %2898 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2898:                                             ; preds = %2894
  %2899 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %29)
  %2900 = trunc i64 %2899 to i32
  switch i32 %2900, label %3438 [
    i32 1, label %2901
    i32 2, label %2962
    i32 3, label %3023
    i32 4, label %3083
  ]

2901:                                             ; preds = %2898
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %241) #6
  invoke void @_ZN5sc_dt6sc_intILi6EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %241, i32 noundef 0)
          to label %2902 unwind label %2925

2902:                                             ; preds = %2901
  %2903 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %241, ptr noundef nonnull align 8 dereferenceable(8) %21)
          to label %2904 unwind label %2927

2904:                                             ; preds = %2902
  %2905 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %2903)
          to label %2906 unwind label %2927

2906:                                             ; preds = %2904
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %241) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %241) #6
  %2907 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %2908 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2908:                                             ; preds = %2906
  %2909 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %2910 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2910:                                             ; preds = %2908
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %242) #6
  store i8 1, ptr %242, align 1, !tbaa !5
  %2911 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %242)
          to label %2912 unwind label %2930

2912:                                             ; preds = %2910
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %242) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %243) #6
  store i8 1, ptr %243, align 1, !tbaa !5
  %2913 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %243)
          to label %2914 unwind label %2932

2914:                                             ; preds = %2912
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %243) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1389 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1389:                                   ; preds = %2914, %2936
  %2915 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %2916 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2916:                                             ; preds = %.preheader1389
  %2917 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %2915)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %244) #6
  store i8 0, ptr %244, align 1, !tbaa !5
  %2918 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %244)
          to label %2919 unwind label %2934

2919:                                             ; preds = %2916
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %244) #6
  %2920 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %2921 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2921:                                             ; preds = %2919
  %2922 = load i8, ptr %2920, align 1, !tbaa !5, !range !9, !noundef !10
  %2923 = trunc nuw i8 %2922 to i1
  br i1 %2923, label %2924, label %2936

2924:                                             ; preds = %2921
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2937 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2925:                                             ; preds = %2901
  %2926 = landingpad { ptr, i32 }
          cleanup
  br label %2929

2927:                                             ; preds = %2904, %2902
  %2928 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %241) #6
  br label %2929

2929:                                             ; preds = %2927, %2925
  %.pn1115 = phi { ptr, i32 } [ %2928, %2927 ], [ %2926, %2925 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %241) #6
  br label %.loopexit.split-lp

2930:                                             ; preds = %2910
  %2931 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %242) #6
  br label %.loopexit.split-lp

2932:                                             ; preds = %2912
  %2933 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %243) #6
  br label %.loopexit.split-lp

2934:                                             ; preds = %2916
  %2935 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %244) #6
  br label %.loopexit.split-lp

2936:                                             ; preds = %2921
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1389 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !56

2937:                                             ; preds = %2924
  %2938 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %3)
  %2939 = or i64 %2938, 2
  %2940 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %2, i64 noundef %2939)
  %2941 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %2942 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2942:                                             ; preds = %2937
  %2943 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %2944 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2944:                                             ; preds = %2942
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %245) #6
  store i8 0, ptr %245, align 1, !tbaa !5
  %2945 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %245)
          to label %2946 unwind label %2955

2946:                                             ; preds = %2944
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %245) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %246) #6
  store i8 1, ptr %246, align 1, !tbaa !5
  %2947 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %246)
          to label %2948 unwind label %2957

2948:                                             ; preds = %2946
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %246) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1386 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1386:                                   ; preds = %2948, %2961
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %247) #6
  store i8 0, ptr %247, align 1, !tbaa !5
  %2949 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %247)
          to label %2950 unwind label %2959

2950:                                             ; preds = %.preheader1386
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %247) #6
  %2951 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %2952 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2952:                                             ; preds = %2950
  %2953 = load i8, ptr %2951, align 1, !tbaa !5, !range !9, !noundef !10
  %2954 = trunc nuw i8 %2953 to i1
  br i1 %2954, label %.invoke2314, label %2961

2955:                                             ; preds = %2944
  %2956 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %245) #6
  br label %.loopexit.split-lp

2957:                                             ; preds = %2946
  %2958 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %246) #6
  br label %.loopexit.split-lp

2959:                                             ; preds = %.preheader1386
  %2960 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %247) #6
  br label %.loopexit.split-lp

2961:                                             ; preds = %2952
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1386 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !57

2962:                                             ; preds = %2898
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %248) #6
  invoke void @_ZN5sc_dt6sc_intILi6EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %248, i32 noundef 0)
          to label %2963 unwind label %2986

2963:                                             ; preds = %2962
  %2964 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %248, ptr noundef nonnull align 8 dereferenceable(8) %21)
          to label %2965 unwind label %2988

2965:                                             ; preds = %2963
  %2966 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %2964)
          to label %2967 unwind label %2988

2967:                                             ; preds = %2965
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %248) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %248) #6
  %2968 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %2969 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2969:                                             ; preds = %2967
  %2970 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %2971 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2971:                                             ; preds = %2969
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %249) #6
  store i8 1, ptr %249, align 1, !tbaa !5
  %2972 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %249)
          to label %2973 unwind label %2991

2973:                                             ; preds = %2971
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %249) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %250) #6
  store i8 1, ptr %250, align 1, !tbaa !5
  %2974 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %250)
          to label %2975 unwind label %2993

2975:                                             ; preds = %2973
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %250) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1396 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1396:                                   ; preds = %2975, %2997
  %2976 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %2977 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2977:                                             ; preds = %.preheader1396
  %2978 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %2976)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %251) #6
  store i8 0, ptr %251, align 1, !tbaa !5
  %2979 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %251)
          to label %2980 unwind label %2995

2980:                                             ; preds = %2977
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %251) #6
  %2981 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %2982 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

2982:                                             ; preds = %2980
  %2983 = load i8, ptr %2981, align 1, !tbaa !5, !range !9, !noundef !10
  %2984 = trunc nuw i8 %2983 to i1
  br i1 %2984, label %2985, label %2997

2985:                                             ; preds = %2982
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %2998 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

2986:                                             ; preds = %2962
  %2987 = landingpad { ptr, i32 }
          cleanup
  br label %2990

2988:                                             ; preds = %2965, %2963
  %2989 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %248) #6
  br label %2990

2990:                                             ; preds = %2988, %2986
  %.pn1113 = phi { ptr, i32 } [ %2989, %2988 ], [ %2987, %2986 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %248) #6
  br label %.loopexit.split-lp

2991:                                             ; preds = %2971
  %2992 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %249) #6
  br label %.loopexit.split-lp

2993:                                             ; preds = %2973
  %2994 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %250) #6
  br label %.loopexit.split-lp

2995:                                             ; preds = %2977
  %2996 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %251) #6
  br label %.loopexit.split-lp

2997:                                             ; preds = %2982
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1396 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !58

2998:                                             ; preds = %2985
  %2999 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %3)
  %3000 = and i64 %2999, -3
  %3001 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %2, i64 noundef %3000)
  %3002 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3003 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3003:                                             ; preds = %2998
  %3004 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %3005 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3005:                                             ; preds = %3003
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %252) #6
  store i8 0, ptr %252, align 1, !tbaa !5
  %3006 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %252)
          to label %3007 unwind label %3016

3007:                                             ; preds = %3005
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %252) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %253) #6
  store i8 1, ptr %253, align 1, !tbaa !5
  %3008 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %253)
          to label %3009 unwind label %3018

3009:                                             ; preds = %3007
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %253) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1393 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1393:                                   ; preds = %3009, %3022
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %254) #6
  store i8 0, ptr %254, align 1, !tbaa !5
  %3010 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %254)
          to label %3011 unwind label %3020

3011:                                             ; preds = %.preheader1393
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %254) #6
  %3012 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %3013 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3013:                                             ; preds = %3011
  %3014 = load i8, ptr %3012, align 1, !tbaa !5, !range !9, !noundef !10
  %3015 = trunc nuw i8 %3014 to i1
  br i1 %3015, label %.invoke2314, label %3022

3016:                                             ; preds = %3005
  %3017 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %252) #6
  br label %.loopexit.split-lp

3018:                                             ; preds = %3007
  %3019 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %253) #6
  br label %.loopexit.split-lp

3020:                                             ; preds = %.preheader1393
  %3021 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %254) #6
  br label %.loopexit.split-lp

3022:                                             ; preds = %3013
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1393 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !59

3023:                                             ; preds = %2898
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %255) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %255, i32 noundef 12)
          to label %3024 unwind label %3047

3024:                                             ; preds = %3023
  %3025 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %255)
          to label %3026 unwind label %3049

3026:                                             ; preds = %3024
  %3027 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %3025)
          to label %3028 unwind label %3049

3028:                                             ; preds = %3026
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %255) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %255) #6
  %3029 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3030 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3030:                                             ; preds = %3028
  %3031 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %3032 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3032:                                             ; preds = %3030
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %256) #6
  store i8 1, ptr %256, align 1, !tbaa !5
  %3033 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %256)
          to label %3034 unwind label %3052

3034:                                             ; preds = %3032
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %256) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %257) #6
  store i8 1, ptr %257, align 1, !tbaa !5
  %3035 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %257)
          to label %3036 unwind label %3054

3036:                                             ; preds = %3034
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %257) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1403 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1403:                                   ; preds = %3036, %3058
  %3037 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %3038 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3038:                                             ; preds = %.preheader1403
  %3039 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %3037)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %258) #6
  store i8 0, ptr %258, align 1, !tbaa !5
  %3040 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %258)
          to label %3041 unwind label %3056

3041:                                             ; preds = %3038
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %258) #6
  %3042 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %3043 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3043:                                             ; preds = %3041
  %3044 = load i8, ptr %3042, align 1, !tbaa !5, !range !9, !noundef !10
  %3045 = trunc nuw i8 %3044 to i1
  br i1 %3045, label %3046, label %3058

3046:                                             ; preds = %3043
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3059 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3047:                                             ; preds = %3023
  %3048 = landingpad { ptr, i32 }
          cleanup
  br label %3051

3049:                                             ; preds = %3026, %3024
  %3050 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %255) #6
  br label %3051

3051:                                             ; preds = %3049, %3047
  %.pn1111 = phi { ptr, i32 } [ %3050, %3049 ], [ %3048, %3047 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %255) #6
  br label %.loopexit.split-lp

3052:                                             ; preds = %3032
  %3053 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %256) #6
  br label %.loopexit.split-lp

3054:                                             ; preds = %3034
  %3055 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %257) #6
  br label %.loopexit.split-lp

3056:                                             ; preds = %3038
  %3057 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %258) #6
  br label %.loopexit.split-lp

3058:                                             ; preds = %3043
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1403 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !60

3059:                                             ; preds = %3046
  %3060 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 8 dereferenceable(24) %6)
  %3061 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %2, ptr noundef nonnull align 8 dereferenceable(24) %3)
  %3062 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3063 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3063:                                             ; preds = %3059
  %3064 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %3065 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3065:                                             ; preds = %3063
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %259) #6
  store i8 0, ptr %259, align 1, !tbaa !5
  %3066 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %259)
          to label %3067 unwind label %3076

3067:                                             ; preds = %3065
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %259) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %260) #6
  store i8 1, ptr %260, align 1, !tbaa !5
  %3068 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %260)
          to label %3069 unwind label %3078

3069:                                             ; preds = %3067
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %260) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1400 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1400:                                   ; preds = %3069, %3082
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %261) #6
  store i8 0, ptr %261, align 1, !tbaa !5
  %3070 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %261)
          to label %3071 unwind label %3080

3071:                                             ; preds = %.preheader1400
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %261) #6
  %3072 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %3073 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3073:                                             ; preds = %3071
  %3074 = load i8, ptr %3072, align 1, !tbaa !5, !range !9, !noundef !10
  %3075 = trunc nuw i8 %3074 to i1
  br i1 %3075, label %.invoke2314, label %3082

3076:                                             ; preds = %3065
  %3077 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %259) #6
  br label %.loopexit.split-lp

3078:                                             ; preds = %3067
  %3079 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %260) #6
  br label %.loopexit.split-lp

3080:                                             ; preds = %.preheader1400
  %3081 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %261) #6
  br label %.loopexit.split-lp

3082:                                             ; preds = %3073
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1400 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !61

3083:                                             ; preds = %2898
  %3084 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 8 dereferenceable(24) %7)
  %3085 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3086 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3086:                                             ; preds = %3083
  %3087 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %3088 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3088:                                             ; preds = %3086
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %262) #6
  store i8 1, ptr %262, align 1, !tbaa !5
  %3089 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %262)
          to label %3090 unwind label %3103

3090:                                             ; preds = %3088
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %262) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %263) #6
  store i8 1, ptr %263, align 1, !tbaa !5
  %3091 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %263)
          to label %3092 unwind label %3105

3092:                                             ; preds = %3090
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %263) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1435 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1435:                                   ; preds = %3092, %3109
  %3093 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %3094 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3094:                                             ; preds = %.preheader1435
  %3095 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %3093)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %264) #6
  store i8 0, ptr %264, align 1, !tbaa !5
  %3096 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %264)
          to label %3097 unwind label %3107

3097:                                             ; preds = %3094
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %264) #6
  %3098 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %3099 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3099:                                             ; preds = %3097
  %3100 = load i8, ptr %3098, align 1, !tbaa !5, !range !9, !noundef !10
  %3101 = trunc nuw i8 %3100 to i1
  br i1 %3101, label %3102, label %3109

3102:                                             ; preds = %3099
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3110 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3103:                                             ; preds = %3088
  %3104 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %262) #6
  br label %.loopexit.split-lp

3105:                                             ; preds = %3090
  %3106 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %263) #6
  br label %.loopexit.split-lp

3107:                                             ; preds = %3094
  %3108 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %264) #6
  br label %.loopexit.split-lp

3109:                                             ; preds = %3099
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1435 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !62

3110:                                             ; preds = %3102
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %265) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %266) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %266, i32 noundef 0)
          to label %3111 unwind label %3139

3111:                                             ; preds = %3110
  %3112 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %266)
          to label %3113 unwind label %3141

3113:                                             ; preds = %3111
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %265, ptr noundef nonnull align 1 dereferenceable(1) %3112)
          to label %3114 unwind label %3141

3114:                                             ; preds = %3113
  %3115 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %265)
          to label %3116 unwind label %3143

3116:                                             ; preds = %3114
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %265) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %266) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %266) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %265) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %267) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %267, i32 noundef 0)
          to label %3117 unwind label %3147

3117:                                             ; preds = %3116
  %3118 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %267)
          to label %3119 unwind label %3149

3119:                                             ; preds = %3117
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %267) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %267) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %268) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %269) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %269, i32 noundef 0)
          to label %3120 unwind label %3152

3120:                                             ; preds = %3119
  %3121 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %269, ptr noundef nonnull align 8 dereferenceable(8) %11)
          to label %3122 unwind label %3154

3122:                                             ; preds = %3120
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %270) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %270, i32 noundef 0)
          to label %3123 unwind label %3156

3123:                                             ; preds = %3122
  %3124 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %3121, ptr noundef nonnull align 8 dereferenceable(8) %270)
          to label %3125 unwind label %3158

3125:                                             ; preds = %3123
  invoke void @_ZN5sc_dt6sc_intILi7EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %268, ptr noundef nonnull align 1 dereferenceable(1) %3124)
          to label %3126 unwind label %3158

3126:                                             ; preds = %3125
  %3127 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %268)
          to label %3128 unwind label %3160

3128:                                             ; preds = %3126
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %268) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %270) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %270) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %269) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %269) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %268) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %271) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %271, i32 noundef -3)
          to label %3129 unwind label %3166

3129:                                             ; preds = %3128
  %3130 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %271)
          to label %3131 unwind label %3168

3131:                                             ; preds = %3129
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %271) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %271) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %272) #6
  store i8 1, ptr %272, align 1, !tbaa !5
  %3132 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %272)
          to label %3133 unwind label %3171

3133:                                             ; preds = %3131
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %272) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1431 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1431:                                   ; preds = %3133, %3138
  %3134 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %3135 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3135:                                             ; preds = %.preheader1431
  %3136 = load i8, ptr %3134, align 1, !tbaa !5, !range !9, !noundef !10
  %3137 = trunc nuw i8 %3136 to i1
  br i1 %3137, label %3173, label %3138

3138:                                             ; preds = %3135
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1431 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !63

3139:                                             ; preds = %3110
  %3140 = landingpad { ptr, i32 }
          cleanup
  br label %3146

3141:                                             ; preds = %3113, %3111
  %3142 = landingpad { ptr, i32 }
          cleanup
  br label %3145

3143:                                             ; preds = %3114
  %3144 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %265) #6
  br label %3145

3145:                                             ; preds = %3143, %3141
  %.pn1080 = phi { ptr, i32 } [ %3144, %3143 ], [ %3142, %3141 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %266) #6
  br label %3146

3146:                                             ; preds = %3145, %3139
  %.pn1080.pn = phi { ptr, i32 } [ %.pn1080, %3145 ], [ %3140, %3139 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %266) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %265) #6
  br label %.loopexit.split-lp

3147:                                             ; preds = %3116
  %3148 = landingpad { ptr, i32 }
          cleanup
  br label %3151

3149:                                             ; preds = %3117
  %3150 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %267) #6
  br label %3151

3151:                                             ; preds = %3149, %3147
  %.pn1083 = phi { ptr, i32 } [ %3150, %3149 ], [ %3148, %3147 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %267) #6
  br label %.loopexit.split-lp

3152:                                             ; preds = %3119
  %3153 = landingpad { ptr, i32 }
          cleanup
  br label %3165

3154:                                             ; preds = %3120
  %3155 = landingpad { ptr, i32 }
          cleanup
  br label %3164

3156:                                             ; preds = %3122
  %3157 = landingpad { ptr, i32 }
          cleanup
  br label %3163

3158:                                             ; preds = %3125, %3123
  %3159 = landingpad { ptr, i32 }
          cleanup
  br label %3162

3160:                                             ; preds = %3126
  %3161 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %268) #6
  br label %3162

3162:                                             ; preds = %3160, %3158
  %.pn1085 = phi { ptr, i32 } [ %3161, %3160 ], [ %3159, %3158 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %270) #6
  br label %3163

3163:                                             ; preds = %3162, %3156
  %.pn1085.pn = phi { ptr, i32 } [ %.pn1085, %3162 ], [ %3157, %3156 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %270) #6
  br label %3164

3164:                                             ; preds = %3163, %3154
  %.pn1085.pn.pn = phi { ptr, i32 } [ %.pn1085.pn, %3163 ], [ %3155, %3154 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %269) #6
  br label %3165

3165:                                             ; preds = %3164, %3152
  %.pn1085.pn.pn.pn = phi { ptr, i32 } [ %.pn1085.pn.pn, %3164 ], [ %3153, %3152 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %269) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %268) #6
  br label %.loopexit.split-lp

3166:                                             ; preds = %3128
  %3167 = landingpad { ptr, i32 }
          cleanup
  br label %3170

3168:                                             ; preds = %3129
  %3169 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %271) #6
  br label %3170

3170:                                             ; preds = %3168, %3166
  %.pn1090 = phi { ptr, i32 } [ %3169, %3168 ], [ %3167, %3166 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %271) #6
  br label %.loopexit.split-lp

3171:                                             ; preds = %3131
  %3172 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %272) #6
  br label %.loopexit.split-lp

3173:                                             ; preds = %3135
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3174 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3174:                                             ; preds = %3173
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %273) #6
  store i8 0, ptr %273, align 1, !tbaa !5
  %3175 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %273)
          to label %3176 unwind label %3196

3176:                                             ; preds = %3174
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %273) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3177 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3177:                                             ; preds = %3176
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %274) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %274, i32 noundef 3779)
          to label %3178 unwind label %3198

3178:                                             ; preds = %3177
  %3179 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %274)
          to label %3180 unwind label %3200

3180:                                             ; preds = %3178
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %274) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %274) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %275) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %275, i32 noundef 0)
          to label %3181 unwind label %3203

3181:                                             ; preds = %3180
  %3182 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %275)
          to label %3183 unwind label %3205

3183:                                             ; preds = %3181
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %275) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %275) #6
  %3184 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %23)
          to label %3185 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3185:                                             ; preds = %3183
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %276) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %276, i32 noundef -2)
          to label %3186 unwind label %3208

3186:                                             ; preds = %3185
  %3187 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %276)
          to label %3188 unwind label %3210

3188:                                             ; preds = %3186
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %276) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %276) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %277) #6
  store i8 1, ptr %277, align 1, !tbaa !5
  %3189 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %277)
          to label %3190 unwind label %3213

3190:                                             ; preds = %3188
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %277) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1428 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1428:                                   ; preds = %3190, %3195
  %3191 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %3192 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3192:                                             ; preds = %.preheader1428
  %3193 = load i8, ptr %3191, align 1, !tbaa !5, !range !9, !noundef !10
  %3194 = trunc nuw i8 %3193 to i1
  br i1 %3194, label %3215, label %3195

3195:                                             ; preds = %3192
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1428 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !64

3196:                                             ; preds = %3174
  %3197 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %273) #6
  br label %.loopexit.split-lp

3198:                                             ; preds = %3177
  %3199 = landingpad { ptr, i32 }
          cleanup
  br label %3202

3200:                                             ; preds = %3178
  %3201 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %274) #6
  br label %3202

3202:                                             ; preds = %3200, %3198
  %.pn1092 = phi { ptr, i32 } [ %3201, %3200 ], [ %3199, %3198 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %274) #6
  br label %.loopexit.split-lp

3203:                                             ; preds = %3180
  %3204 = landingpad { ptr, i32 }
          cleanup
  br label %3207

3205:                                             ; preds = %3181
  %3206 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %275) #6
  br label %3207

3207:                                             ; preds = %3205, %3203
  %.pn1094 = phi { ptr, i32 } [ %3206, %3205 ], [ %3204, %3203 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %275) #6
  br label %.loopexit.split-lp

3208:                                             ; preds = %3185
  %3209 = landingpad { ptr, i32 }
          cleanup
  br label %3212

3210:                                             ; preds = %3186
  %3211 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %276) #6
  br label %3212

3212:                                             ; preds = %3210, %3208
  %.pn1096 = phi { ptr, i32 } [ %3211, %3210 ], [ %3209, %3208 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %276) #6
  br label %.loopexit.split-lp

3213:                                             ; preds = %3188
  %3214 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %277) #6
  br label %.loopexit.split-lp

3215:                                             ; preds = %3192
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3216 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3216:                                             ; preds = %3215
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %278) #6
  store i8 0, ptr %278, align 1, !tbaa !5
  %3217 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %278)
          to label %3218 unwind label %3248

3218:                                             ; preds = %3216
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %278) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3219 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3219:                                             ; preds = %3218
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %279) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %279, i32 noundef 10)
          to label %3220 unwind label %3250

3220:                                             ; preds = %3219
  %3221 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %279)
          to label %3222 unwind label %3252

3222:                                             ; preds = %3220
  %3223 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %3221)
          to label %3224 unwind label %3252

3224:                                             ; preds = %3222
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %279) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %279) #6
  %3225 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 15, i32 noundef 5)
          to label %3226 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3226:                                             ; preds = %3224
  %3227 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %21, i32 noundef 4, i32 noundef 0)
          to label %3228 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3228:                                             ; preds = %3226
  %3229 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %3225, ptr noundef nonnull align 8 dereferenceable(8) %3227)
          to label %3230 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3230:                                             ; preds = %3228
  %3231 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %2, ptr noundef nonnull align 1 dereferenceable(1) %3229)
          to label %3232 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3232:                                             ; preds = %3230
  %3233 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3234 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3234:                                             ; preds = %3232
  %3235 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %3236 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3236:                                             ; preds = %3234
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %280) #6
  store i8 0, ptr %280, align 1, !tbaa !5
  %3237 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %280)
          to label %3238 unwind label %3255

3238:                                             ; preds = %3236
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %280) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %281) #6
  store i8 1, ptr %281, align 1, !tbaa !5
  %3239 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %281)
          to label %3240 unwind label %3257

3240:                                             ; preds = %3238
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %281) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1424 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1424:                                   ; preds = %3240, %3261
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %282) #6
  store i8 0, ptr %282, align 1, !tbaa !5
  %3241 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %282)
          to label %3242 unwind label %3259

3242:                                             ; preds = %.preheader1424
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %282) #6
  %3243 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %3244 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3244:                                             ; preds = %3242
  %3245 = load i8, ptr %3243, align 1, !tbaa !5, !range !9, !noundef !10
  %3246 = trunc nuw i8 %3245 to i1
  br i1 %3246, label %3247, label %3261

3247:                                             ; preds = %3244
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3262 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3248:                                             ; preds = %3216
  %3249 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %278) #6
  br label %.loopexit.split-lp

3250:                                             ; preds = %3219
  %3251 = landingpad { ptr, i32 }
          cleanup
  br label %3254

3252:                                             ; preds = %3222, %3220
  %3253 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %279) #6
  br label %3254

3254:                                             ; preds = %3252, %3250
  %.pn1098 = phi { ptr, i32 } [ %3253, %3252 ], [ %3251, %3250 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %279) #6
  br label %.loopexit.split-lp

3255:                                             ; preds = %3236
  %3256 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %280) #6
  br label %.loopexit.split-lp

3257:                                             ; preds = %3238
  %3258 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %281) #6
  br label %.loopexit.split-lp

3259:                                             ; preds = %.preheader1424
  %3260 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %282) #6
  br label %.loopexit.split-lp

3261:                                             ; preds = %3244
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1424 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !65

3262:                                             ; preds = %3247
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %283) #6
  invoke void @_ZN5sc_dt6sc_intILi6EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %283, i32 noundef 0)
          to label %3263 unwind label %3286

3263:                                             ; preds = %3262
  %3264 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %283, ptr noundef nonnull align 8 dereferenceable(8) %21)
          to label %3265 unwind label %3288

3265:                                             ; preds = %3263
  %3266 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %3264)
          to label %3267 unwind label %3288

3267:                                             ; preds = %3265
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %283) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %283) #6
  %3268 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3269 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3269:                                             ; preds = %3267
  %3270 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %3271 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3271:                                             ; preds = %3269
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %284) #6
  store i8 1, ptr %284, align 1, !tbaa !5
  %3272 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %284)
          to label %3273 unwind label %3291

3273:                                             ; preds = %3271
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %284) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %285) #6
  store i8 1, ptr %285, align 1, !tbaa !5
  %3274 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %285)
          to label %3275 unwind label %3293

3275:                                             ; preds = %3273
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %285) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1421 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1421:                                   ; preds = %3275, %3297
  %3276 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %3277 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3277:                                             ; preds = %.preheader1421
  %3278 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %3276)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %286) #6
  store i8 0, ptr %286, align 1, !tbaa !5
  %3279 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %286)
          to label %3280 unwind label %3295

3280:                                             ; preds = %3277
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %286) #6
  %3281 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %3282 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3282:                                             ; preds = %3280
  %3283 = load i8, ptr %3281, align 1, !tbaa !5, !range !9, !noundef !10
  %3284 = trunc nuw i8 %3283 to i1
  br i1 %3284, label %3285, label %3297

3285:                                             ; preds = %3282
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3298 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3286:                                             ; preds = %3262
  %3287 = landingpad { ptr, i32 }
          cleanup
  br label %3290

3288:                                             ; preds = %3265, %3263
  %3289 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %283) #6
  br label %3290

3290:                                             ; preds = %3288, %3286
  %.pn1100 = phi { ptr, i32 } [ %3289, %3288 ], [ %3287, %3286 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %283) #6
  br label %.loopexit.split-lp

3291:                                             ; preds = %3271
  %3292 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %284) #6
  br label %.loopexit.split-lp

3293:                                             ; preds = %3273
  %3294 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %285) #6
  br label %.loopexit.split-lp

3295:                                             ; preds = %3277
  %3296 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %286) #6
  br label %.loopexit.split-lp

3297:                                             ; preds = %3282
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1421 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !66

3298:                                             ; preds = %3285
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %287) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %287, i32 noundef 11)
          to label %3299 unwind label %3307

3299:                                             ; preds = %3298
  %3300 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %287)
          to label %3301 unwind label %3309

3301:                                             ; preds = %3299
  %3302 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %3300)
          to label %3303 unwind label %3309

3303:                                             ; preds = %3301
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %287) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %287) #6
  %3304 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 1)
          to label %.invoke2315 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.invoke2315:                                      ; preds = %3303
  %3305 = call noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %3304)
  %not.2325 = xor i1 %3305, true
  %.2320 = zext i1 %not.2325 to i32
  %3306 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef %.2320)
          to label %3312 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3307:                                             ; preds = %3298
  %3308 = landingpad { ptr, i32 }
          cleanup
  br label %3311

3309:                                             ; preds = %3301, %3299
  %3310 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %287) #6
  br label %3311

3311:                                             ; preds = %3309, %3307
  %.pn1102 = phi { ptr, i32 } [ %3310, %3309 ], [ %3308, %3307 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %287) #6
  br label %.loopexit.split-lp

3312:                                             ; preds = %.invoke2315
  %3313 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3314 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3314:                                             ; preds = %3312
  %3315 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %3316 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3316:                                             ; preds = %3314
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %288) #6
  store i8 0, ptr %288, align 1, !tbaa !5
  %3317 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %288)
          to label %3318 unwind label %3328

3318:                                             ; preds = %3316
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %288) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %289) #6
  store i8 1, ptr %289, align 1, !tbaa !5
  %3319 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %289)
          to label %3320 unwind label %3330

3320:                                             ; preds = %3318
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %289) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1417 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1417:                                   ; preds = %3320, %3334
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %290) #6
  store i8 0, ptr %290, align 1, !tbaa !5
  %3321 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %290)
          to label %3322 unwind label %3332

3322:                                             ; preds = %.preheader1417
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %290) #6
  %3323 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %3324 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3324:                                             ; preds = %3322
  %3325 = load i8, ptr %3323, align 1, !tbaa !5, !range !9, !noundef !10
  %3326 = trunc nuw i8 %3325 to i1
  br i1 %3326, label %3327, label %3334

3327:                                             ; preds = %3324
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3335 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3328:                                             ; preds = %3316
  %3329 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %288) #6
  br label %.loopexit.split-lp

3330:                                             ; preds = %3318
  %3331 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %289) #6
  br label %.loopexit.split-lp

3332:                                             ; preds = %.preheader1417
  %3333 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %290) #6
  br label %.loopexit.split-lp

3334:                                             ; preds = %3324
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1417 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !67

3335:                                             ; preds = %3327
  %3336 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 8 dereferenceable(24) %6)
  %3337 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3338 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3338:                                             ; preds = %3335
  %3339 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %3340 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3340:                                             ; preds = %3338
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %291) #6
  store i8 1, ptr %291, align 1, !tbaa !5
  %3341 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %291)
          to label %3342 unwind label %3355

3342:                                             ; preds = %3340
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %291) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %292) #6
  store i8 1, ptr %292, align 1, !tbaa !5
  %3343 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %292)
          to label %3344 unwind label %3357

3344:                                             ; preds = %3342
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %292) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1414 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1414:                                   ; preds = %3344, %3361
  %3345 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %3346 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3346:                                             ; preds = %.preheader1414
  %3347 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %3345)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %293) #6
  store i8 0, ptr %293, align 1, !tbaa !5
  %3348 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %293)
          to label %3349 unwind label %3359

3349:                                             ; preds = %3346
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %293) #6
  %3350 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %3351 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3351:                                             ; preds = %3349
  %3352 = load i8, ptr %3350, align 1, !tbaa !5, !range !9, !noundef !10
  %3353 = trunc nuw i8 %3352 to i1
  br i1 %3353, label %3354, label %3361

3354:                                             ; preds = %3351
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3362 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3355:                                             ; preds = %3340
  %3356 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %291) #6
  br label %.loopexit.split-lp

3357:                                             ; preds = %3342
  %3358 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %292) #6
  br label %.loopexit.split-lp

3359:                                             ; preds = %3346
  %3360 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %293) #6
  br label %.loopexit.split-lp

3361:                                             ; preds = %3351
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1414 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !68

3362:                                             ; preds = %3354
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %294) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %294, i32 noundef 12)
          to label %3363 unwind label %3384

3363:                                             ; preds = %3362
  %3364 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %294)
          to label %3365 unwind label %3386

3365:                                             ; preds = %3363
  %3366 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %3364)
          to label %3367 unwind label %3386

3367:                                             ; preds = %3365
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %294) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %294) #6
  %3368 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %2, ptr noundef nonnull align 8 dereferenceable(24) %3)
  %3369 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3370 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3370:                                             ; preds = %3367
  %3371 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %3372 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3372:                                             ; preds = %3370
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %295) #6
  store i8 0, ptr %295, align 1, !tbaa !5
  %3373 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %295)
          to label %3374 unwind label %3389

3374:                                             ; preds = %3372
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %295) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %296) #6
  store i8 1, ptr %296, align 1, !tbaa !5
  %3375 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %296)
          to label %3376 unwind label %3391

3376:                                             ; preds = %3374
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %296) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1410 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1410:                                   ; preds = %3376, %3395
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %297) #6
  store i8 0, ptr %297, align 1, !tbaa !5
  %3377 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %297)
          to label %3378 unwind label %3393

3378:                                             ; preds = %.preheader1410
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %297) #6
  %3379 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %3380 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3380:                                             ; preds = %3378
  %3381 = load i8, ptr %3379, align 1, !tbaa !5, !range !9, !noundef !10
  %3382 = trunc nuw i8 %3381 to i1
  br i1 %3382, label %3383, label %3395

3383:                                             ; preds = %3380
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3396 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3384:                                             ; preds = %3362
  %3385 = landingpad { ptr, i32 }
          cleanup
  br label %3388

3386:                                             ; preds = %3365, %3363
  %3387 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %294) #6
  br label %3388

3388:                                             ; preds = %3386, %3384
  %.pn1104 = phi { ptr, i32 } [ %3387, %3386 ], [ %3385, %3384 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %294) #6
  br label %.loopexit.split-lp

3389:                                             ; preds = %3372
  %3390 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %295) #6
  br label %.loopexit.split-lp

3391:                                             ; preds = %3374
  %3392 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %296) #6
  br label %.loopexit.split-lp

3393:                                             ; preds = %.preheader1410
  %3394 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %297) #6
  br label %.loopexit.split-lp

3395:                                             ; preds = %3380
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1410 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !69

3396:                                             ; preds = %3383
  %3397 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %3398 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3398:                                             ; preds = %3396
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %298) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %299) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %299, i32 noundef 0)
          to label %3399 unwind label %3417

3399:                                             ; preds = %3398
  %3400 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %299)
          to label %3401 unwind label %3419

3401:                                             ; preds = %3399
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %298, ptr noundef nonnull align 1 dereferenceable(1) %3400)
          to label %3402 unwind label %3419

3402:                                             ; preds = %3401
  %3403 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %298)
          to label %3404 unwind label %3421

3404:                                             ; preds = %3402
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %298) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %299) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %299) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %298) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %300) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %300, i32 noundef 1)
          to label %3405 unwind label %3425

3405:                                             ; preds = %3404
  %3406 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %300)
          to label %3407 unwind label %3427

3407:                                             ; preds = %3405
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %300) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %300) #6
  %3408 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %3409 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3409:                                             ; preds = %3407
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %301) #6
  store i8 1, ptr %301, align 1, !tbaa !5
  %3410 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %301)
          to label %3411 unwind label %3430

3411:                                             ; preds = %3409
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %301) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1407 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1407:                                   ; preds = %3411, %3416
  %3412 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %3413 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3413:                                             ; preds = %.preheader1407
  %3414 = load i8, ptr %3412, align 1, !tbaa !5, !range !9, !noundef !10
  %3415 = trunc nuw i8 %3414 to i1
  br i1 %3415, label %3432, label %3416

3416:                                             ; preds = %3413
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1407 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !70

3417:                                             ; preds = %3398
  %3418 = landingpad { ptr, i32 }
          cleanup
  br label %3424

3419:                                             ; preds = %3401, %3399
  %3420 = landingpad { ptr, i32 }
          cleanup
  br label %3423

3421:                                             ; preds = %3402
  %3422 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %298) #6
  br label %3423

3423:                                             ; preds = %3421, %3419
  %.pn1106 = phi { ptr, i32 } [ %3422, %3421 ], [ %3420, %3419 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %299) #6
  br label %3424

3424:                                             ; preds = %3423, %3417
  %.pn1106.pn = phi { ptr, i32 } [ %.pn1106, %3423 ], [ %3418, %3417 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %299) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %298) #6
  br label %.loopexit.split-lp

3425:                                             ; preds = %3404
  %3426 = landingpad { ptr, i32 }
          cleanup
  br label %3429

3427:                                             ; preds = %3405
  %3428 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %300) #6
  br label %3429

3429:                                             ; preds = %3427, %3425
  %.pn1109 = phi { ptr, i32 } [ %3428, %3427 ], [ %3426, %3425 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %300) #6
  br label %.loopexit.split-lp

3430:                                             ; preds = %3409
  %3431 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %301) #6
  br label %.loopexit.split-lp

3432:                                             ; preds = %3413
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3433 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3433:                                             ; preds = %3432
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %302) #6
  store i8 0, ptr %302, align 1, !tbaa !5
  %3434 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %302)
          to label %3435 unwind label %3436

3435:                                             ; preds = %3433
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %302) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3440 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3436:                                             ; preds = %3433
  %3437 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %302) #6
  br label %.loopexit.split-lp

3438:                                             ; preds = %2898
  %3439 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %27, i32 noundef -4)
          to label %.invoke2314 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.invoke2314:                                      ; preds = %3073, %3013, %2952, %3438
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3440 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3440:                                             ; preds = %.invoke2314, %3435, %2026
  %.1 = phi i1 [ false, %2026 ], [ %.0, %3435 ], [ true, %.invoke2314 ]
  %3441 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %12)
  %.not1117 = icmp eq i64 %3441, 3
  br i1 %.not1117, label %3442, label %.invoke2324

3442:                                             ; preds = %3440
  %3443 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %11)
  %3444 = icmp eq i64 %3443, 0
  br i1 %3444, label %.invoke2324, label %3445

3445:                                             ; preds = %3442
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3446 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3446:                                             ; preds = %3445
  %3447 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %27, ptr noundef nonnull align 8 dereferenceable(24) %27)
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %303) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %303, i32 noundef 24)
          to label %3448 unwind label %3471

3448:                                             ; preds = %3446
  %3449 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %303)
          to label %3450 unwind label %3473

3450:                                             ; preds = %3448
  %3451 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %3449)
          to label %3452 unwind label %3473

3452:                                             ; preds = %3450
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %303) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %303) #6
  %3453 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3454 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3454:                                             ; preds = %3452
  %3455 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %3456 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3456:                                             ; preds = %3454
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %304) #6
  store i8 1, ptr %304, align 1, !tbaa !5
  %3457 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %304)
          to label %3458 unwind label %3476

3458:                                             ; preds = %3456
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %304) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %305) #6
  store i8 1, ptr %305, align 1, !tbaa !5
  %3459 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %305)
          to label %3460 unwind label %3478

3460:                                             ; preds = %3458
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %305) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1382 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1382:                                   ; preds = %3460, %3482
  %3461 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %3462 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3462:                                             ; preds = %.preheader1382
  %3463 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %3461)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %306) #6
  store i8 0, ptr %306, align 1, !tbaa !5
  %3464 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %306)
          to label %3465 unwind label %3480

3465:                                             ; preds = %3462
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %306) #6
  %3466 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %3467 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3467:                                             ; preds = %3465
  %3468 = load i8, ptr %3466, align 1, !tbaa !5, !range !9, !noundef !10
  %3469 = trunc nuw i8 %3468 to i1
  br i1 %3469, label %3470, label %3482

3470:                                             ; preds = %3467
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3483 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3471:                                             ; preds = %3446
  %3472 = landingpad { ptr, i32 }
          cleanup
  br label %3475

3473:                                             ; preds = %3450, %3448
  %3474 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %303) #6
  br label %3475

3475:                                             ; preds = %3473, %3471
  %.pn1118 = phi { ptr, i32 } [ %3474, %3473 ], [ %3472, %3471 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %303) #6
  br label %.loopexit.split-lp

3476:                                             ; preds = %3456
  %3477 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %304) #6
  br label %.loopexit.split-lp

3478:                                             ; preds = %3458
  %3479 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %305) #6
  br label %.loopexit.split-lp

3480:                                             ; preds = %3462
  %3481 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %306) #6
  br label %.loopexit.split-lp

3482:                                             ; preds = %3467
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1382 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !71

3483:                                             ; preds = %3470
  %3484 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 13, i32 noundef 8)
          to label %3485 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3485:                                             ; preds = %3483
  %3486 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %19, ptr noundef nonnull align 8 dereferenceable(28) %3484)
  %3487 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %19)
  %3488 = add nsw i64 %3487, 2
  %3489 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %3488)
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %307) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %307, i32 noundef 8)
          to label %3490 unwind label %3511

3490:                                             ; preds = %3485
  %3491 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %307)
          to label %3492 unwind label %3513

3492:                                             ; preds = %3490
  %3493 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %3491)
          to label %3494 unwind label %3513

3494:                                             ; preds = %3492
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %307) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %307) #6
  %3495 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %2, ptr noundef nonnull align 8 dereferenceable(24) %3)
  %3496 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3497 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3497:                                             ; preds = %3494
  %3498 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %3499 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3499:                                             ; preds = %3497
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %308) #6
  store i8 0, ptr %308, align 1, !tbaa !5
  %3500 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %308)
          to label %3501 unwind label %3516

3501:                                             ; preds = %3499
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %308) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %309) #6
  store i8 1, ptr %309, align 1, !tbaa !5
  %3502 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %309)
          to label %3503 unwind label %3518

3503:                                             ; preds = %3501
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %309) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1379 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1379:                                   ; preds = %3503, %3522
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %310) #6
  store i8 0, ptr %310, align 1, !tbaa !5
  %3504 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %310)
          to label %3505 unwind label %3520

3505:                                             ; preds = %.preheader1379
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %310) #6
  %3506 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %3507 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3507:                                             ; preds = %3505
  %3508 = load i8, ptr %3506, align 1, !tbaa !5, !range !9, !noundef !10
  %3509 = trunc nuw i8 %3508 to i1
  br i1 %3509, label %3510, label %3522

3510:                                             ; preds = %3507
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3523 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3511:                                             ; preds = %3485
  %3512 = landingpad { ptr, i32 }
          cleanup
  br label %3515

3513:                                             ; preds = %3492, %3490
  %3514 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %307) #6
  br label %3515

3515:                                             ; preds = %3513, %3511
  %.pn1120 = phi { ptr, i32 } [ %3514, %3513 ], [ %3512, %3511 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %307) #6
  br label %.loopexit.split-lp

3516:                                             ; preds = %3499
  %3517 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %308) #6
  br label %.loopexit.split-lp

3518:                                             ; preds = %3501
  %3519 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %309) #6
  br label %.loopexit.split-lp

3520:                                             ; preds = %.preheader1379
  %3521 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %310) #6
  br label %.loopexit.split-lp

3522:                                             ; preds = %3507
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1379 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !72

3523:                                             ; preds = %3510
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %311) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %311, i32 noundef 25)
          to label %3524 unwind label %3547

3524:                                             ; preds = %3523
  %3525 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %311)
          to label %3526 unwind label %3549

3526:                                             ; preds = %3524
  %3527 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %3525)
          to label %3528 unwind label %3549

3528:                                             ; preds = %3526
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %311) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %311) #6
  %3529 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3530 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3530:                                             ; preds = %3528
  %3531 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %3532 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3532:                                             ; preds = %3530
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %312) #6
  store i8 1, ptr %312, align 1, !tbaa !5
  %3533 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %312)
          to label %3534 unwind label %3552

3534:                                             ; preds = %3532
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %312) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %313) #6
  store i8 1, ptr %313, align 1, !tbaa !5
  %3535 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %313)
          to label %3536 unwind label %3554

3536:                                             ; preds = %3534
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %313) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1375 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1375:                                   ; preds = %3536, %3558
  %3537 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %3538 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3538:                                             ; preds = %.preheader1375
  %3539 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %3537)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %314) #6
  store i8 0, ptr %314, align 1, !tbaa !5
  %3540 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %314)
          to label %3541 unwind label %3556

3541:                                             ; preds = %3538
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %314) #6
  %3542 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %3543 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3543:                                             ; preds = %3541
  %3544 = load i8, ptr %3542, align 1, !tbaa !5, !range !9, !noundef !10
  %3545 = trunc nuw i8 %3544 to i1
  br i1 %3545, label %3546, label %3558

3546:                                             ; preds = %3543
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3559 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3547:                                             ; preds = %3523
  %3548 = landingpad { ptr, i32 }
          cleanup
  br label %3551

3549:                                             ; preds = %3526, %3524
  %3550 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %311) #6
  br label %3551

3551:                                             ; preds = %3549, %3547
  %.pn1122 = phi { ptr, i32 } [ %3550, %3549 ], [ %3548, %3547 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %311) #6
  br label %.loopexit.split-lp

3552:                                             ; preds = %3532
  %3553 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %312) #6
  br label %.loopexit.split-lp

3554:                                             ; preds = %3534
  %3555 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %313) #6
  br label %.loopexit.split-lp

3556:                                             ; preds = %3538
  %3557 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %314) #6
  br label %.loopexit.split-lp

3558:                                             ; preds = %3543
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1375 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !73

3559:                                             ; preds = %3546
  %3560 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 11, i32 noundef 0)
          to label %3561 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3561:                                             ; preds = %3559
  %3562 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %14, ptr noundef nonnull align 8 dereferenceable(28) %3560)
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %315) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %315, i32 noundef 9)
          to label %3563 unwind label %3584

3563:                                             ; preds = %3561
  %3564 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %315)
          to label %3565 unwind label %3586

3565:                                             ; preds = %3563
  %3566 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %3564)
          to label %3567 unwind label %3586

3567:                                             ; preds = %3565
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %315) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %315) #6
  %3568 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %2, ptr noundef nonnull align 8 dereferenceable(24) %3)
  %3569 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3570 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3570:                                             ; preds = %3567
  %3571 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %3572 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3572:                                             ; preds = %3570
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %316) #6
  store i8 0, ptr %316, align 1, !tbaa !5
  %3573 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %316)
          to label %3574 unwind label %3589

3574:                                             ; preds = %3572
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %316) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %317) #6
  store i8 1, ptr %317, align 1, !tbaa !5
  %3575 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %317)
          to label %3576 unwind label %3591

3576:                                             ; preds = %3574
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %317) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1372 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1372:                                   ; preds = %3576, %3595
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %318) #6
  store i8 0, ptr %318, align 1, !tbaa !5
  %3577 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %318)
          to label %3578 unwind label %3593

3578:                                             ; preds = %.preheader1372
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %318) #6
  %3579 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %3580 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3580:                                             ; preds = %3578
  %3581 = load i8, ptr %3579, align 1, !tbaa !5, !range !9, !noundef !10
  %3582 = trunc nuw i8 %3581 to i1
  br i1 %3582, label %3583, label %3595

3583:                                             ; preds = %3580
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3596 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3584:                                             ; preds = %3561
  %3585 = landingpad { ptr, i32 }
          cleanup
  br label %3588

3586:                                             ; preds = %3565, %3563
  %3587 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %315) #6
  br label %3588

3588:                                             ; preds = %3586, %3584
  %.pn1124 = phi { ptr, i32 } [ %3587, %3586 ], [ %3585, %3584 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %315) #6
  br label %.loopexit.split-lp

3589:                                             ; preds = %3572
  %3590 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %316) #6
  br label %.loopexit.split-lp

3591:                                             ; preds = %3574
  %3592 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %317) #6
  br label %.loopexit.split-lp

3593:                                             ; preds = %.preheader1372
  %3594 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %318) #6
  br label %.loopexit.split-lp

3595:                                             ; preds = %3580
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1372 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !74

3596:                                             ; preds = %3583
  %3597 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %13)
  %3598 = shl i64 %3597, 1
  %3599 = add nsw i64 %3598, 32
  %3600 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %3599)
  %3601 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %12, i32 noundef 6)
          to label %3602 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3602:                                             ; preds = %3596
  %3603 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 0)
          to label %3604 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3604:                                             ; preds = %3602
  %3605 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %3603)
          to label %3606 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3606:                                             ; preds = %3604
  %.not1126 = icmp eq i64 %3605, 0
  br i1 %.not1126, label %3609, label %3607

3607:                                             ; preds = %3606
  %3608 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 10)
          to label %.invoke2313 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3609:                                             ; preds = %3606
  %3610 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 11)
          to label %.invoke2313 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.invoke2313:                                      ; preds = %3609, %3607
  %3611 = phi i32 [ 272, %3607 ], [ 288, %3609 ]
  %3612 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %6, i32 noundef %3611)
          to label %3613 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3613:                                             ; preds = %.invoke2313
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %319) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %319, i32 noundef 0)
          to label %3614 unwind label %3640

3614:                                             ; preds = %3613
  %3615 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %319)
          to label %3616 unwind label %3642

3616:                                             ; preds = %3614
  %3617 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %3615)
          to label %3618 unwind label %3642

3618:                                             ; preds = %3616
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %319) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %319) #6
  %3619 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %13, ptr noundef nonnull align 8 dereferenceable(8) %12)
          to label %3620 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3620:                                             ; preds = %3618
  %3621 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %3619, ptr noundef nonnull align 8 dereferenceable(8) %11)
          to label %3622 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3622:                                             ; preds = %3620
  %3623 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %2, ptr noundef nonnull align 1 dereferenceable(1) %3621)
          to label %3624 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3624:                                             ; preds = %3622
  %3625 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3626 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3626:                                             ; preds = %3624
  %3627 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %3628 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3628:                                             ; preds = %3626
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %320) #6
  store i8 0, ptr %320, align 1, !tbaa !5
  %3629 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %320)
          to label %3630 unwind label %3645

3630:                                             ; preds = %3628
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %320) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %321) #6
  store i8 1, ptr %321, align 1, !tbaa !5
  %3631 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %321)
          to label %3632 unwind label %3647

3632:                                             ; preds = %3630
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %321) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1368 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1368:                                   ; preds = %3632, %3651
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %322) #6
  store i8 0, ptr %322, align 1, !tbaa !5
  %3633 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %322)
          to label %3634 unwind label %3649

3634:                                             ; preds = %.preheader1368
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %322) #6
  %3635 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %3636 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3636:                                             ; preds = %3634
  %3637 = load i8, ptr %3635, align 1, !tbaa !5, !range !9, !noundef !10
  %3638 = trunc nuw i8 %3637 to i1
  br i1 %3638, label %3639, label %3651

3639:                                             ; preds = %3636
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3652 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3640:                                             ; preds = %3613
  %3641 = landingpad { ptr, i32 }
          cleanup
  br label %3644

3642:                                             ; preds = %3616, %3614
  %3643 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %319) #6
  br label %3644

3644:                                             ; preds = %3642, %3640
  %.pn1127 = phi { ptr, i32 } [ %3643, %3642 ], [ %3641, %3640 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %319) #6
  br label %.loopexit.split-lp

3645:                                             ; preds = %3628
  %3646 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %320) #6
  br label %.loopexit.split-lp

3647:                                             ; preds = %3630
  %3648 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %321) #6
  br label %.loopexit.split-lp

3649:                                             ; preds = %.preheader1368
  %3650 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %322) #6
  br label %.loopexit.split-lp

3651:                                             ; preds = %3636
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1368 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !75

3652:                                             ; preds = %3639
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %323) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %323, i32 noundef 1)
          to label %3653 unwind label %3678

3653:                                             ; preds = %3652
  %3654 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %323)
          to label %3655 unwind label %3680

3655:                                             ; preds = %3653
  %3656 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %3654)
          to label %3657 unwind label %3680

3657:                                             ; preds = %3655
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %323) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %323) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %324) #6
  invoke void @_ZN5sc_dt6sc_intILi4EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %324, i32 noundef 0)
          to label %3658 unwind label %3683

3658:                                             ; preds = %3657
  %3659 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %324, ptr noundef nonnull align 8 dereferenceable(8) %14)
          to label %3660 unwind label %3685

3660:                                             ; preds = %3658
  %3661 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %2, ptr noundef nonnull align 1 dereferenceable(1) %3659)
          to label %3662 unwind label %3685

3662:                                             ; preds = %3660
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %324) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %324) #6
  %3663 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3664 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3664:                                             ; preds = %3662
  %3665 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %3666 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3666:                                             ; preds = %3664
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %325) #6
  store i8 0, ptr %325, align 1, !tbaa !5
  %3667 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %325)
          to label %3668 unwind label %3688

3668:                                             ; preds = %3666
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %325) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %326) #6
  store i8 1, ptr %326, align 1, !tbaa !5
  %3669 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %326)
          to label %3670 unwind label %3690

3670:                                             ; preds = %3668
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %326) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1365 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1365:                                   ; preds = %3670, %3694
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %327) #6
  store i8 0, ptr %327, align 1, !tbaa !5
  %3671 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %327)
          to label %3672 unwind label %3692

3672:                                             ; preds = %.preheader1365
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %327) #6
  %3673 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %3674 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3674:                                             ; preds = %3672
  %3675 = load i8, ptr %3673, align 1, !tbaa !5, !range !9, !noundef !10
  %3676 = trunc nuw i8 %3675 to i1
  br i1 %3676, label %3677, label %3694

3677:                                             ; preds = %3674
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3695 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3678:                                             ; preds = %3652
  %3679 = landingpad { ptr, i32 }
          cleanup
  br label %3682

3680:                                             ; preds = %3655, %3653
  %3681 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %323) #6
  br label %3682

3682:                                             ; preds = %3680, %3678
  %.pn1129 = phi { ptr, i32 } [ %3681, %3680 ], [ %3679, %3678 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %323) #6
  br label %.loopexit.split-lp

3683:                                             ; preds = %3657
  %3684 = landingpad { ptr, i32 }
          cleanup
  br label %3687

3685:                                             ; preds = %3660, %3658
  %3686 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %324) #6
  br label %3687

3687:                                             ; preds = %3685, %3683
  %.pn1131 = phi { ptr, i32 } [ %3686, %3685 ], [ %3684, %3683 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %324) #6
  br label %.loopexit.split-lp

3688:                                             ; preds = %3666
  %3689 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %325) #6
  br label %.loopexit.split-lp

3690:                                             ; preds = %3668
  %3691 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %326) #6
  br label %.loopexit.split-lp

3692:                                             ; preds = %.preheader1365
  %3693 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %327) #6
  br label %.loopexit.split-lp

3694:                                             ; preds = %3674
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1365 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !76

3695:                                             ; preds = %3677
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %328) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %329) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %329, i32 noundef 26)
          to label %3696 unwind label %3723

3696:                                             ; preds = %3695
  %3697 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %329)
          to label %3698 unwind label %3725

3698:                                             ; preds = %3696
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %328, ptr noundef nonnull align 1 dereferenceable(1) %3697)
          to label %3699 unwind label %3725

3699:                                             ; preds = %3698
  %3700 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %328)
          to label %3701 unwind label %3727

3701:                                             ; preds = %3699
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %328) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %329) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %329) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %328) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %330) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %331) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %331, i32 noundef 10)
          to label %3702 unwind label %3731

3702:                                             ; preds = %3701
  %3703 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %331)
          to label %3704 unwind label %3733

3704:                                             ; preds = %3702
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %330, ptr noundef nonnull align 1 dereferenceable(1) %3703)
          to label %3705 unwind label %3733

3705:                                             ; preds = %3704
  %3706 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %330)
          to label %3707 unwind label %3735

3707:                                             ; preds = %3705
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %330) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %331) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %331) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %330) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %332) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2ERKNS_11sc_int_baseE(ptr noundef nonnull align 8 dereferenceable(24) %332, ptr noundef nonnull align 8 dereferenceable(24) %19)
          to label %3708 unwind label %3739

3708:                                             ; preds = %3707
  %3709 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %332)
          to label %3710 unwind label %3741

3710:                                             ; preds = %3708
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %332) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %332) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %333) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %333, i32 noundef 3)
          to label %3711 unwind label %3744

3711:                                             ; preds = %3710
  %3712 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %333)
          to label %3713 unwind label %3746

3713:                                             ; preds = %3711
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %333) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %333) #6
  %3714 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %3715 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3715:                                             ; preds = %3713
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %334) #6
  store i8 1, ptr %334, align 1, !tbaa !5
  %3716 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %334)
          to label %3717 unwind label %3749

3717:                                             ; preds = %3715
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %334) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1361 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1361:                                   ; preds = %3717, %3722
  %3718 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %3719 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3719:                                             ; preds = %.preheader1361
  %3720 = load i8, ptr %3718, align 1, !tbaa !5, !range !9, !noundef !10
  %3721 = trunc nuw i8 %3720 to i1
  br i1 %3721, label %3751, label %3722

3722:                                             ; preds = %3719
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1361 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !77

3723:                                             ; preds = %3695
  %3724 = landingpad { ptr, i32 }
          cleanup
  br label %3730

3725:                                             ; preds = %3698, %3696
  %3726 = landingpad { ptr, i32 }
          cleanup
  br label %3729

3727:                                             ; preds = %3699
  %3728 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %328) #6
  br label %3729

3729:                                             ; preds = %3727, %3725
  %.pn1133 = phi { ptr, i32 } [ %3728, %3727 ], [ %3726, %3725 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %329) #6
  br label %3730

3730:                                             ; preds = %3729, %3723
  %.pn1133.pn = phi { ptr, i32 } [ %.pn1133, %3729 ], [ %3724, %3723 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %329) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %328) #6
  br label %.loopexit.split-lp

3731:                                             ; preds = %3701
  %3732 = landingpad { ptr, i32 }
          cleanup
  br label %3738

3733:                                             ; preds = %3704, %3702
  %3734 = landingpad { ptr, i32 }
          cleanup
  br label %3737

3735:                                             ; preds = %3705
  %3736 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %330) #6
  br label %3737

3737:                                             ; preds = %3735, %3733
  %.pn1136 = phi { ptr, i32 } [ %3736, %3735 ], [ %3734, %3733 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %331) #6
  br label %3738

3738:                                             ; preds = %3737, %3731
  %.pn1136.pn = phi { ptr, i32 } [ %.pn1136, %3737 ], [ %3732, %3731 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %331) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %330) #6
  br label %.loopexit.split-lp

3739:                                             ; preds = %3707
  %3740 = landingpad { ptr, i32 }
          cleanup
  br label %3743

3741:                                             ; preds = %3708
  %3742 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %332) #6
  br label %3743

3743:                                             ; preds = %3741, %3739
  %.pn1139 = phi { ptr, i32 } [ %3742, %3741 ], [ %3740, %3739 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %332) #6
  br label %.loopexit.split-lp

3744:                                             ; preds = %3710
  %3745 = landingpad { ptr, i32 }
          cleanup
  br label %3748

3746:                                             ; preds = %3711
  %3747 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %333) #6
  br label %3748

3748:                                             ; preds = %3746, %3744
  %.pn1141 = phi { ptr, i32 } [ %3747, %3746 ], [ %3745, %3744 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %333) #6
  br label %.loopexit.split-lp

3749:                                             ; preds = %3715
  %3750 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %334) #6
  br label %.loopexit.split-lp

3751:                                             ; preds = %3719
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3752 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3752:                                             ; preds = %3751
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %335) #6
  store i8 0, ptr %335, align 1, !tbaa !5
  %3753 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %335)
          to label %3754 unwind label %3776

3754:                                             ; preds = %3752
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %335) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3755 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3755:                                             ; preds = %3754
  %3756 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %6)
          to label %3757 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3757:                                             ; preds = %3755
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %336) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %337) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %337, i32 noundef 0)
          to label %3758 unwind label %3778

3758:                                             ; preds = %3757
  %3759 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %337)
          to label %3760 unwind label %3780

3760:                                             ; preds = %3758
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %336, ptr noundef nonnull align 1 dereferenceable(1) %3759)
          to label %3761 unwind label %3780

3761:                                             ; preds = %3760
  %3762 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %336)
          to label %3763 unwind label %3782

3763:                                             ; preds = %3761
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %336) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %337) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %337) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %336) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %338) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %338, i32 noundef 1)
          to label %3764 unwind label %3786

3764:                                             ; preds = %3763
  %3765 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %338)
          to label %3766 unwind label %3788

3766:                                             ; preds = %3764
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %338) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %338) #6
  %3767 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %3768 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3768:                                             ; preds = %3766
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %339) #6
  store i8 1, ptr %339, align 1, !tbaa !5
  %3769 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %339)
          to label %3770 unwind label %3791

3770:                                             ; preds = %3768
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %339) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1358 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1358:                                   ; preds = %3770, %3775
  %3771 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %3772 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3772:                                             ; preds = %.preheader1358
  %3773 = load i8, ptr %3771, align 1, !tbaa !5, !range !9, !noundef !10
  %3774 = trunc nuw i8 %3773 to i1
  br i1 %3774, label %3793, label %3775

3775:                                             ; preds = %3772
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1358 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !78

3776:                                             ; preds = %3752
  %3777 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %335) #6
  br label %.loopexit.split-lp

3778:                                             ; preds = %3757
  %3779 = landingpad { ptr, i32 }
          cleanup
  br label %3785

3780:                                             ; preds = %3760, %3758
  %3781 = landingpad { ptr, i32 }
          cleanup
  br label %3784

3782:                                             ; preds = %3761
  %3783 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %336) #6
  br label %3784

3784:                                             ; preds = %3782, %3780
  %.pn1143 = phi { ptr, i32 } [ %3783, %3782 ], [ %3781, %3780 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %337) #6
  br label %3785

3785:                                             ; preds = %3784, %3778
  %.pn1143.pn = phi { ptr, i32 } [ %.pn1143, %3784 ], [ %3779, %3778 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %337) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %336) #6
  br label %.loopexit.split-lp

3786:                                             ; preds = %3763
  %3787 = landingpad { ptr, i32 }
          cleanup
  br label %3790

3788:                                             ; preds = %3764
  %3789 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %338) #6
  br label %3790

3790:                                             ; preds = %3788, %3786
  %.pn1146 = phi { ptr, i32 } [ %3789, %3788 ], [ %3787, %3786 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %338) #6
  br label %.loopexit.split-lp

3791:                                             ; preds = %3768
  %3792 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %339) #6
  br label %.loopexit.split-lp

3793:                                             ; preds = %3772
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3794 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3794:                                             ; preds = %3793
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %340) #6
  store i8 0, ptr %340, align 1, !tbaa !5
  %3795 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %340)
          to label %3796 unwind label %3797

3796:                                             ; preds = %3794
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %340) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.loopexit1302 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3797:                                             ; preds = %3794
  %3798 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %340) #6
  br label %.loopexit.split-lp

3799:                                             ; preds = %2026
  %3800 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %12)
  %.not936 = icmp eq i64 %3800, 3
  br i1 %.not936, label %3801, label %.invoke2324

3801:                                             ; preds = %3799
  %3802 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %11)
  %3803 = icmp eq i64 %3802, 0
  br i1 %3803, label %.invoke2324, label %3804

3804:                                             ; preds = %3801
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3805 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3805:                                             ; preds = %3804
  %3806 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %27, ptr noundef nonnull align 8 dereferenceable(24) %27)
  %3807 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %13, i32 noundef -32)
          to label %3808 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3808:                                             ; preds = %3805
  %3809 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %12, i32 noundef 5)
          to label %3810 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3810:                                             ; preds = %3808
  %3811 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %14, i32 noundef 2)
          to label %3812 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3812:                                             ; preds = %3810
  %3813 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %17, i32 noundef 0)
          to label %3814 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3814:                                             ; preds = %3812
  %3815 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %19, i32 noundef 3)
          to label %3816 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3816:                                             ; preds = %3814
  %3817 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %20, i32 noundef 9)
          to label %3818 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3818:                                             ; preds = %3816
  %3819 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi4EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %18, i32 noundef 0)
          to label %3820 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3820:                                             ; preds = %3818
  %3821 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %15, i32 noundef 0)
          to label %3822 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3822:                                             ; preds = %3820
  %3823 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 0)
          to label %3824 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3824:                                             ; preds = %3822
  %3825 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %3823)
          to label %3826 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3826:                                             ; preds = %3824
  %.not937 = icmp eq i64 %3825, 0
  br i1 %.not937, label %3829, label %3827

3827:                                             ; preds = %3826
  %3828 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 10)
          to label %.invoke2312 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3829:                                             ; preds = %3826
  %3830 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 11)
          to label %.invoke2312 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.invoke2312:                                      ; preds = %3829, %3827
  %3831 = phi i32 [ 272, %3827 ], [ 288, %3829 ]
  %3832 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %6, i32 noundef %3831)
          to label %3833 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3833:                                             ; preds = %.invoke2312
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %341) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %341, i32 noundef 10)
          to label %3834 unwind label %3857

3834:                                             ; preds = %3833
  %3835 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %341)
          to label %3836 unwind label %3859

3836:                                             ; preds = %3834
  %3837 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %3835)
          to label %3838 unwind label %3859

3838:                                             ; preds = %3836
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %341) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %341) #6
  %3839 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3840 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3840:                                             ; preds = %3838
  %3841 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %3842 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3842:                                             ; preds = %3840
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %342) #6
  store i8 1, ptr %342, align 1, !tbaa !5
  %3843 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %342)
          to label %3844 unwind label %3862

3844:                                             ; preds = %3842
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %342) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %343) #6
  store i8 1, ptr %343, align 1, !tbaa !5
  %3845 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %343)
          to label %3846 unwind label %3864

3846:                                             ; preds = %3844
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %343) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1571 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1571:                                   ; preds = %3846, %3868
  %3847 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %3848 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1573

3848:                                             ; preds = %.preheader1571
  %3849 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %3847)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %344) #6
  store i8 0, ptr %344, align 1, !tbaa !5
  %3850 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %344)
          to label %3851 unwind label %3866

3851:                                             ; preds = %3848
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %344) #6
  %3852 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %3853 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1573

3853:                                             ; preds = %3851
  %3854 = load i8, ptr %3852, align 1, !tbaa !5, !range !9, !noundef !10
  %3855 = trunc nuw i8 %3854 to i1
  br i1 %3855, label %3856, label %3868

3856:                                             ; preds = %3853
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3869 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3857:                                             ; preds = %3833
  %3858 = landingpad { ptr, i32 }
          cleanup
  br label %3861

3859:                                             ; preds = %3836, %3834
  %3860 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %341) #6
  br label %3861

3861:                                             ; preds = %3859, %3857
  %.pn938 = phi { ptr, i32 } [ %3860, %3859 ], [ %3858, %3857 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %341) #6
  br label %.loopexit.split-lp

3862:                                             ; preds = %3842
  %3863 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %342) #6
  br label %.loopexit.split-lp

3864:                                             ; preds = %3844
  %3865 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %343) #6
  br label %.loopexit.split-lp

3866:                                             ; preds = %3848
  %3867 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %344) #6
  br label %.loopexit.split-lp

3868:                                             ; preds = %3853
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1571 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1573, !llvm.loop !79

3869:                                             ; preds = %3856
  %3870 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1758)
          to label %3871 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3871:                                             ; preds = %3869
  %3872 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %3870, i32 noundef 3)
          to label %3873 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3873:                                             ; preds = %3871
  %3874 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %3872)
          to label %3875 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3875:                                             ; preds = %3873
  %.not940 = icmp eq i64 %3874, 0
  br i1 %.not940, label %3878, label %3876

3876:                                             ; preds = %3875
  %3877 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 4096)
          to label %3880 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3878:                                             ; preds = %3875
  %3879 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %3)
  br label %3880

3880:                                             ; preds = %3876, %3878
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %3881 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3881:                                             ; preds = %3880
  %3882 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %30, ptr noundef nonnull align 8 dereferenceable(24) %3)
  %3883 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %30)
  %3884 = trunc i64 %3883 to i32
  switch i32 %3884, label %4932 [
    i32 0, label %3885
    i32 1, label %3923
    i32 2, label %3957
    i32 3, label %3991
    i32 4, label %4039
    i32 5, label %4111
    i32 6, label %4183
    i32 7, label %4255
    i32 8, label %4344
    i32 9, label %4416
    i32 10, label %4474
    i32 -1, label %4555
  ]

3885:                                             ; preds = %3881
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %345) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %345, i32 noundef 24)
          to label %3886 unwind label %3911

3886:                                             ; preds = %3885
  %3887 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %345)
          to label %3888 unwind label %3913

3888:                                             ; preds = %3886
  %3889 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %3887)
          to label %3890 unwind label %3913

3890:                                             ; preds = %3888
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %345) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %345) #6
  %3891 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1761)
          to label %3892 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3892:                                             ; preds = %3890
  %3893 = load i8, ptr %3891, align 1, !tbaa !5, !range !9, !noundef !10
  %3894 = zext nneg i8 %3893 to i32
  %3895 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef %3894)
          to label %3896 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3896:                                             ; preds = %3892
  %3897 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3898 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3898:                                             ; preds = %3896
  %3899 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %3900 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3900:                                             ; preds = %3898
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %346) #6
  store i8 0, ptr %346, align 1, !tbaa !5
  %3901 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %346)
          to label %3902 unwind label %3916

3902:                                             ; preds = %3900
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %346) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %347) #6
  store i8 1, ptr %347, align 1, !tbaa !5
  %3903 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %347)
          to label %3904 unwind label %3918

3904:                                             ; preds = %3902
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %347) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1456 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1456:                                   ; preds = %3904, %3922
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %348) #6
  store i8 0, ptr %348, align 1, !tbaa !5
  %3905 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %348)
          to label %3906 unwind label %3920

3906:                                             ; preds = %.preheader1456
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %348) #6
  %3907 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %3908 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3908:                                             ; preds = %3906
  %3909 = load i8, ptr %3907, align 1, !tbaa !5, !range !9, !noundef !10
  %3910 = trunc nuw i8 %3909 to i1
  br i1 %3910, label %.invoke2310, label %3922

3911:                                             ; preds = %3885
  %3912 = landingpad { ptr, i32 }
          cleanup
  br label %3915

3913:                                             ; preds = %3888, %3886
  %3914 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %345) #6
  br label %3915

3915:                                             ; preds = %3913, %3911
  %.pn1042 = phi { ptr, i32 } [ %3914, %3913 ], [ %3912, %3911 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %345) #6
  br label %.loopexit.split-lp

3916:                                             ; preds = %3900
  %3917 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %346) #6
  br label %.loopexit.split-lp

3918:                                             ; preds = %3902
  %3919 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %347) #6
  br label %.loopexit.split-lp

3920:                                             ; preds = %.preheader1456
  %3921 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %348) #6
  br label %.loopexit.split-lp

3922:                                             ; preds = %3908
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1456 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !80

3923:                                             ; preds = %3881
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %349) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %349, i32 noundef 24)
          to label %3924 unwind label %3945

3924:                                             ; preds = %3923
  %3925 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %349)
          to label %3926 unwind label %3947

3926:                                             ; preds = %3924
  %3927 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %3925)
          to label %3928 unwind label %3947

3928:                                             ; preds = %3926
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %349) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %349) #6
  %3929 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef 3)
          to label %3930 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3930:                                             ; preds = %3928
  %3931 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3932 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3932:                                             ; preds = %3930
  %3933 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %3934 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3934:                                             ; preds = %3932
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %350) #6
  store i8 0, ptr %350, align 1, !tbaa !5
  %3935 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %350)
          to label %3936 unwind label %3950

3936:                                             ; preds = %3934
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %350) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %351) #6
  store i8 1, ptr %351, align 1, !tbaa !5
  %3937 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %351)
          to label %3938 unwind label %3952

3938:                                             ; preds = %3936
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %351) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1459 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1459:                                   ; preds = %3938, %3956
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %352) #6
  store i8 0, ptr %352, align 1, !tbaa !5
  %3939 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %352)
          to label %3940 unwind label %3954

3940:                                             ; preds = %.preheader1459
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %352) #6
  %3941 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %3942 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3942:                                             ; preds = %3940
  %3943 = load i8, ptr %3941, align 1, !tbaa !5, !range !9, !noundef !10
  %3944 = trunc nuw i8 %3943 to i1
  br i1 %3944, label %.invoke2310, label %3956

3945:                                             ; preds = %3923
  %3946 = landingpad { ptr, i32 }
          cleanup
  br label %3949

3947:                                             ; preds = %3926, %3924
  %3948 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %349) #6
  br label %3949

3949:                                             ; preds = %3947, %3945
  %.pn1040 = phi { ptr, i32 } [ %3948, %3947 ], [ %3946, %3945 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %349) #6
  br label %.loopexit.split-lp

3950:                                             ; preds = %3934
  %3951 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %350) #6
  br label %.loopexit.split-lp

3952:                                             ; preds = %3936
  %3953 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %351) #6
  br label %.loopexit.split-lp

3954:                                             ; preds = %.preheader1459
  %3955 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %352) #6
  br label %.loopexit.split-lp

3956:                                             ; preds = %3942
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1459 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !81

3957:                                             ; preds = %3881
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %353) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %353, i32 noundef 24)
          to label %3958 unwind label %3979

3958:                                             ; preds = %3957
  %3959 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %353)
          to label %3960 unwind label %3981

3960:                                             ; preds = %3958
  %3961 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %3959)
          to label %3962 unwind label %3981

3962:                                             ; preds = %3960
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %353) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %353) #6
  %3963 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef 32)
          to label %3964 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3964:                                             ; preds = %3962
  %3965 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %3966 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3966:                                             ; preds = %3964
  %3967 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %3968 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

3968:                                             ; preds = %3966
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %354) #6
  store i8 0, ptr %354, align 1, !tbaa !5
  %3969 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %354)
          to label %3970 unwind label %3984

3970:                                             ; preds = %3968
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %354) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %355) #6
  store i8 1, ptr %355, align 1, !tbaa !5
  %3971 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %355)
          to label %3972 unwind label %3986

3972:                                             ; preds = %3970
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %355) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1463 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1463:                                   ; preds = %3972, %3990
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %356) #6
  store i8 0, ptr %356, align 1, !tbaa !5
  %3973 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %356)
          to label %3974 unwind label %3988

3974:                                             ; preds = %.preheader1463
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %356) #6
  %3975 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %3976 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

3976:                                             ; preds = %3974
  %3977 = load i8, ptr %3975, align 1, !tbaa !5, !range !9, !noundef !10
  %3978 = trunc nuw i8 %3977 to i1
  br i1 %3978, label %.invoke2310, label %3990

3979:                                             ; preds = %3957
  %3980 = landingpad { ptr, i32 }
          cleanup
  br label %3983

3981:                                             ; preds = %3960, %3958
  %3982 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %353) #6
  br label %3983

3983:                                             ; preds = %3981, %3979
  %.pn1038 = phi { ptr, i32 } [ %3982, %3981 ], [ %3980, %3979 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %353) #6
  br label %.loopexit.split-lp

3984:                                             ; preds = %3968
  %3985 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %354) #6
  br label %.loopexit.split-lp

3986:                                             ; preds = %3970
  %3987 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %355) #6
  br label %.loopexit.split-lp

3988:                                             ; preds = %.preheader1463
  %3989 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %356) #6
  br label %.loopexit.split-lp

3990:                                             ; preds = %3976
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1463 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !82

3991:                                             ; preds = %3881
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %357) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %357, i32 noundef 24)
          to label %3992 unwind label %4022

3992:                                             ; preds = %3991
  %3993 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %357)
          to label %3994 unwind label %4024

3994:                                             ; preds = %3992
  %3995 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %3993)
          to label %3996 unwind label %4024

3996:                                             ; preds = %3994
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %357) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %357) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %358) #6
  invoke void @_ZN5sc_dt6sc_intILi10EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %358, i32 noundef 0)
          to label %3997 unwind label %4027

3997:                                             ; preds = %3996
  %3998 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1762)
          to label %3999 unwind label %4029

3999:                                             ; preds = %3997
  %4000 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi2EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1763)
          to label %4001 unwind label %4029

4001:                                             ; preds = %3999
  %4002 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %3998, ptr noundef nonnull align 8 dereferenceable(8) %4000)
          to label %4003 unwind label %4029

4003:                                             ; preds = %4001
  %4004 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %358, ptr noundef nonnull align 8 dereferenceable(8) %4002)
          to label %4005 unwind label %4029

4005:                                             ; preds = %4003
  %4006 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %2, ptr noundef nonnull align 1 dereferenceable(1) %4004)
          to label %4007 unwind label %4029

4007:                                             ; preds = %4005
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %358) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %358) #6
  %4008 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %4009 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4009:                                             ; preds = %4007
  %4010 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %4011 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4011:                                             ; preds = %4009
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %359) #6
  store i8 0, ptr %359, align 1, !tbaa !5
  %4012 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %359)
          to label %4013 unwind label %4032

4013:                                             ; preds = %4011
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %359) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %360) #6
  store i8 1, ptr %360, align 1, !tbaa !5
  %4014 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %360)
          to label %4015 unwind label %4034

4015:                                             ; preds = %4013
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %360) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1466 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1466:                                   ; preds = %4015, %4038
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %361) #6
  store i8 0, ptr %361, align 1, !tbaa !5
  %4016 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %361)
          to label %4017 unwind label %4036

4017:                                             ; preds = %.preheader1466
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %361) #6
  %4018 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %4019 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

4019:                                             ; preds = %4017
  %4020 = load i8, ptr %4018, align 1, !tbaa !5, !range !9, !noundef !10
  %4021 = trunc nuw i8 %4020 to i1
  br i1 %4021, label %.invoke2310, label %4038

4022:                                             ; preds = %3991
  %4023 = landingpad { ptr, i32 }
          cleanup
  br label %4026

4024:                                             ; preds = %3994, %3992
  %4025 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %357) #6
  br label %4026

4026:                                             ; preds = %4024, %4022
  %.pn1034 = phi { ptr, i32 } [ %4025, %4024 ], [ %4023, %4022 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %357) #6
  br label %.loopexit.split-lp

4027:                                             ; preds = %3996
  %4028 = landingpad { ptr, i32 }
          cleanup
  br label %4031

4029:                                             ; preds = %4005, %4003, %4001, %3999, %3997
  %4030 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %358) #6
  br label %4031

4031:                                             ; preds = %4029, %4027
  %.pn1036 = phi { ptr, i32 } [ %4030, %4029 ], [ %4028, %4027 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %358) #6
  br label %.loopexit.split-lp

4032:                                             ; preds = %4011
  %4033 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %359) #6
  br label %.loopexit.split-lp

4034:                                             ; preds = %4013
  %4035 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %360) #6
  br label %.loopexit.split-lp

4036:                                             ; preds = %.preheader1466
  %4037 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %361) #6
  br label %.loopexit.split-lp

4038:                                             ; preds = %4019
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1466 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !83

4039:                                             ; preds = %3881
  %4040 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %14, i32 noundef 6)
          to label %4041 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4041:                                             ; preds = %4039
  %4042 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 0)
          to label %4043 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4043:                                             ; preds = %4041
  %4044 = call noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %4042)
  br i1 %4044, label %4045, label %4054

4045:                                             ; preds = %4043
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %362) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %362, i32 noundef 8)
          to label %4046 unwind label %4049

4046:                                             ; preds = %4045
  %4047 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %362)
          to label %4048 unwind label %4051

4048:                                             ; preds = %4046
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %362) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %362) #6
  br label %4063

4049:                                             ; preds = %4045
  %4050 = landingpad { ptr, i32 }
          cleanup
  br label %4053

4051:                                             ; preds = %4046
  %4052 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %362) #6
  br label %4053

4053:                                             ; preds = %4051, %4049
  %.pn1025 = phi { ptr, i32 } [ %4052, %4051 ], [ %4050, %4049 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %362) #6
  br label %.loopexit.split-lp

4054:                                             ; preds = %4043
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %363) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %363, i32 noundef 16)
          to label %4055 unwind label %4058

4055:                                             ; preds = %4054
  %4056 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %363)
          to label %4057 unwind label %4060

4057:                                             ; preds = %4055
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %363) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %363) #6
  br label %4063

4058:                                             ; preds = %4054
  %4059 = landingpad { ptr, i32 }
          cleanup
  br label %4062

4060:                                             ; preds = %4055
  %4061 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %363) #6
  br label %4062

4062:                                             ; preds = %4060, %4058
  %.pn1023 = phi { ptr, i32 } [ %4061, %4060 ], [ %4059, %4058 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %363) #6
  br label %.loopexit.split-lp

4063:                                             ; preds = %4057, %4048
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %364) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %365) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %365, i32 noundef 24)
          to label %4064 unwind label %4085

4064:                                             ; preds = %4063
  %4065 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %365)
          to label %4066 unwind label %4087

4066:                                             ; preds = %4064
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %364, ptr noundef nonnull align 1 dereferenceable(1) %4065)
          to label %4067 unwind label %4087

4067:                                             ; preds = %4066
  %4068 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %364)
          to label %4069 unwind label %4089

4069:                                             ; preds = %4067
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %364) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %365) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %365) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %364) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %366) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %366, i32 noundef 3)
          to label %4070 unwind label %4093

4070:                                             ; preds = %4069
  %4071 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %366)
          to label %4072 unwind label %4095

4072:                                             ; preds = %4070
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %366) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %366) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %367) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %367, i32 noundef 3)
          to label %4073 unwind label %4098

4073:                                             ; preds = %4072
  %4074 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %367)
          to label %4075 unwind label %4100

4075:                                             ; preds = %4073
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %367) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %367) #6
  %4076 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %4077 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4077:                                             ; preds = %4075
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %368) #6
  store i8 1, ptr %368, align 1, !tbaa !5
  %4078 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %368)
          to label %4079 unwind label %4103

4079:                                             ; preds = %4077
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %368) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1470 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1470:                                   ; preds = %4079, %4084
  %4080 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %4081 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

4081:                                             ; preds = %.preheader1470
  %4082 = load i8, ptr %4080, align 1, !tbaa !5, !range !9, !noundef !10
  %4083 = trunc nuw i8 %4082 to i1
  br i1 %4083, label %4105, label %4084

4084:                                             ; preds = %4081
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1470 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !84

4085:                                             ; preds = %4063
  %4086 = landingpad { ptr, i32 }
          cleanup
  br label %4092

4087:                                             ; preds = %4066, %4064
  %4088 = landingpad { ptr, i32 }
          cleanup
  br label %4091

4089:                                             ; preds = %4067
  %4090 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %364) #6
  br label %4091

4091:                                             ; preds = %4089, %4087
  %.pn1027 = phi { ptr, i32 } [ %4090, %4089 ], [ %4088, %4087 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %365) #6
  br label %4092

4092:                                             ; preds = %4091, %4085
  %.pn1027.pn = phi { ptr, i32 } [ %.pn1027, %4091 ], [ %4086, %4085 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %365) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %364) #6
  br label %.loopexit.split-lp

4093:                                             ; preds = %4069
  %4094 = landingpad { ptr, i32 }
          cleanup
  br label %4097

4095:                                             ; preds = %4070
  %4096 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %366) #6
  br label %4097

4097:                                             ; preds = %4095, %4093
  %.pn1030 = phi { ptr, i32 } [ %4096, %4095 ], [ %4094, %4093 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %366) #6
  br label %.loopexit.split-lp

4098:                                             ; preds = %4072
  %4099 = landingpad { ptr, i32 }
          cleanup
  br label %4102

4100:                                             ; preds = %4073
  %4101 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %367) #6
  br label %4102

4102:                                             ; preds = %4100, %4098
  %.pn1032 = phi { ptr, i32 } [ %4101, %4100 ], [ %4099, %4098 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %367) #6
  br label %.loopexit.split-lp

4103:                                             ; preds = %4077
  %4104 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %368) #6
  br label %.loopexit.split-lp

4105:                                             ; preds = %4081
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4106 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4106:                                             ; preds = %4105
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %369) #6
  store i8 0, ptr %369, align 1, !tbaa !5
  %4107 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %369)
          to label %4108 unwind label %4109

4108:                                             ; preds = %4106
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %369) #6
  br label %.invoke2310

4109:                                             ; preds = %4106
  %4110 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %369) #6
  br label %.loopexit.split-lp

4111:                                             ; preds = %3881
  %4112 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %14, i32 noundef 64)
          to label %4113 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4113:                                             ; preds = %4111
  %4114 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 0)
          to label %4115 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4115:                                             ; preds = %4113
  %4116 = call noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %4114)
  br i1 %4116, label %4117, label %4126

4117:                                             ; preds = %4115
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %370) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %370, i32 noundef 64)
          to label %4118 unwind label %4121

4118:                                             ; preds = %4117
  %4119 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %370)
          to label %4120 unwind label %4123

4120:                                             ; preds = %4118
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %370) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %370) #6
  br label %4135

4121:                                             ; preds = %4117
  %4122 = landingpad { ptr, i32 }
          cleanup
  br label %4125

4123:                                             ; preds = %4118
  %4124 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %370) #6
  br label %4125

4125:                                             ; preds = %4123, %4121
  %.pn1014 = phi { ptr, i32 } [ %4124, %4123 ], [ %4122, %4121 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %370) #6
  br label %.loopexit.split-lp

4126:                                             ; preds = %4115
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %371) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %371, i32 noundef 96)
          to label %4127 unwind label %4130

4127:                                             ; preds = %4126
  %4128 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %371)
          to label %4129 unwind label %4132

4129:                                             ; preds = %4127
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %371) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %371) #6
  br label %4135

4130:                                             ; preds = %4126
  %4131 = landingpad { ptr, i32 }
          cleanup
  br label %4134

4132:                                             ; preds = %4127
  %4133 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %371) #6
  br label %4134

4134:                                             ; preds = %4132, %4130
  %.pn1012 = phi { ptr, i32 } [ %4133, %4132 ], [ %4131, %4130 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %371) #6
  br label %.loopexit.split-lp

4135:                                             ; preds = %4129, %4120
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %372) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %373) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %373, i32 noundef 24)
          to label %4136 unwind label %4157

4136:                                             ; preds = %4135
  %4137 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %373)
          to label %4138 unwind label %4159

4138:                                             ; preds = %4136
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %372, ptr noundef nonnull align 1 dereferenceable(1) %4137)
          to label %4139 unwind label %4159

4139:                                             ; preds = %4138
  %4140 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %372)
          to label %4141 unwind label %4161

4141:                                             ; preds = %4139
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %372) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %373) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %373) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %372) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %374) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %374, i32 noundef 32)
          to label %4142 unwind label %4165

4142:                                             ; preds = %4141
  %4143 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %374)
          to label %4144 unwind label %4167

4144:                                             ; preds = %4142
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %374) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %374) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %375) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %375, i32 noundef 3)
          to label %4145 unwind label %4170

4145:                                             ; preds = %4144
  %4146 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %375)
          to label %4147 unwind label %4172

4147:                                             ; preds = %4145
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %375) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %375) #6
  %4148 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %4149 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4149:                                             ; preds = %4147
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %376) #6
  store i8 1, ptr %376, align 1, !tbaa !5
  %4150 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %376)
          to label %4151 unwind label %4175

4151:                                             ; preds = %4149
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %376) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1473 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1473:                                   ; preds = %4151, %4156
  %4152 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %4153 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1475

4153:                                             ; preds = %.preheader1473
  %4154 = load i8, ptr %4152, align 1, !tbaa !5, !range !9, !noundef !10
  %4155 = trunc nuw i8 %4154 to i1
  br i1 %4155, label %4177, label %4156

4156:                                             ; preds = %4153
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1473 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1475, !llvm.loop !85

4157:                                             ; preds = %4135
  %4158 = landingpad { ptr, i32 }
          cleanup
  br label %4164

4159:                                             ; preds = %4138, %4136
  %4160 = landingpad { ptr, i32 }
          cleanup
  br label %4163

4161:                                             ; preds = %4139
  %4162 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %372) #6
  br label %4163

4163:                                             ; preds = %4161, %4159
  %.pn1016 = phi { ptr, i32 } [ %4162, %4161 ], [ %4160, %4159 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %373) #6
  br label %4164

4164:                                             ; preds = %4163, %4157
  %.pn1016.pn = phi { ptr, i32 } [ %.pn1016, %4163 ], [ %4158, %4157 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %373) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %372) #6
  br label %.loopexit.split-lp

4165:                                             ; preds = %4141
  %4166 = landingpad { ptr, i32 }
          cleanup
  br label %4169

4167:                                             ; preds = %4142
  %4168 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %374) #6
  br label %4169

4169:                                             ; preds = %4167, %4165
  %.pn1019 = phi { ptr, i32 } [ %4168, %4167 ], [ %4166, %4165 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %374) #6
  br label %.loopexit.split-lp

4170:                                             ; preds = %4144
  %4171 = landingpad { ptr, i32 }
          cleanup
  br label %4174

4172:                                             ; preds = %4145
  %4173 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %375) #6
  br label %4174

4174:                                             ; preds = %4172, %4170
  %.pn1021 = phi { ptr, i32 } [ %4173, %4172 ], [ %4171, %4170 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %375) #6
  br label %.loopexit.split-lp

4175:                                             ; preds = %4149
  %4176 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %376) #6
  br label %.loopexit.split-lp

4177:                                             ; preds = %4153
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4178 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4178:                                             ; preds = %4177
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %377) #6
  store i8 0, ptr %377, align 1, !tbaa !5
  %4179 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %377)
          to label %4180 unwind label %4181

4180:                                             ; preds = %4178
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %377) #6
  br label %.invoke2310

4181:                                             ; preds = %4178
  %4182 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %377) #6
  br label %.loopexit.split-lp

4183:                                             ; preds = %3881
  %4184 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %14, i32 noundef 64)
          to label %4185 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4185:                                             ; preds = %4183
  %4186 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 0)
          to label %4187 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4187:                                             ; preds = %4185
  %4188 = call noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %4186)
  br i1 %4188, label %4189, label %4198

4189:                                             ; preds = %4187
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %378) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %378, i32 noundef 128)
          to label %4190 unwind label %4193

4190:                                             ; preds = %4189
  %4191 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %378)
          to label %4192 unwind label %4195

4192:                                             ; preds = %4190
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %378) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %378) #6
  br label %4207

4193:                                             ; preds = %4189
  %4194 = landingpad { ptr, i32 }
          cleanup
  br label %4197

4195:                                             ; preds = %4190
  %4196 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %378) #6
  br label %4197

4197:                                             ; preds = %4195, %4193
  %.pn1003 = phi { ptr, i32 } [ %4196, %4195 ], [ %4194, %4193 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %378) #6
  br label %.loopexit.split-lp

4198:                                             ; preds = %4187
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %379) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %379, i32 noundef 160)
          to label %4199 unwind label %4202

4199:                                             ; preds = %4198
  %4200 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %379)
          to label %4201 unwind label %4204

4201:                                             ; preds = %4199
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %379) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %379) #6
  br label %4207

4202:                                             ; preds = %4198
  %4203 = landingpad { ptr, i32 }
          cleanup
  br label %4206

4204:                                             ; preds = %4199
  %4205 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %379) #6
  br label %4206

4206:                                             ; preds = %4204, %4202
  %.pn1001 = phi { ptr, i32 } [ %4205, %4204 ], [ %4203, %4202 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %379) #6
  br label %.loopexit.split-lp

4207:                                             ; preds = %4201, %4192
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %380) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %381) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %381, i32 noundef 24)
          to label %4208 unwind label %4229

4208:                                             ; preds = %4207
  %4209 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %381)
          to label %4210 unwind label %4231

4210:                                             ; preds = %4208
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %380, ptr noundef nonnull align 1 dereferenceable(1) %4209)
          to label %4211 unwind label %4231

4211:                                             ; preds = %4210
  %4212 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %380)
          to label %4213 unwind label %4233

4213:                                             ; preds = %4211
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %380) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %381) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %381) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %380) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %382) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %382, i32 noundef 32)
          to label %4214 unwind label %4237

4214:                                             ; preds = %4213
  %4215 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %382)
          to label %4216 unwind label %4239

4216:                                             ; preds = %4214
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %382) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %382) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %383) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %383, i32 noundef 3)
          to label %4217 unwind label %4242

4217:                                             ; preds = %4216
  %4218 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %383)
          to label %4219 unwind label %4244

4219:                                             ; preds = %4217
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %383) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %383) #6
  %4220 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %4221 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4221:                                             ; preds = %4219
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %384) #6
  store i8 1, ptr %384, align 1, !tbaa !5
  %4222 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %384)
          to label %4223 unwind label %4247

4223:                                             ; preds = %4221
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %384) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1481 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1481:                                   ; preds = %4223, %4228
  %4224 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %4225 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1483

4225:                                             ; preds = %.preheader1481
  %4226 = load i8, ptr %4224, align 1, !tbaa !5, !range !9, !noundef !10
  %4227 = trunc nuw i8 %4226 to i1
  br i1 %4227, label %4249, label %4228

4228:                                             ; preds = %4225
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1481 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1483, !llvm.loop !86

4229:                                             ; preds = %4207
  %4230 = landingpad { ptr, i32 }
          cleanup
  br label %4236

4231:                                             ; preds = %4210, %4208
  %4232 = landingpad { ptr, i32 }
          cleanup
  br label %4235

4233:                                             ; preds = %4211
  %4234 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %380) #6
  br label %4235

4235:                                             ; preds = %4233, %4231
  %.pn1005 = phi { ptr, i32 } [ %4234, %4233 ], [ %4232, %4231 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %381) #6
  br label %4236

4236:                                             ; preds = %4235, %4229
  %.pn1005.pn = phi { ptr, i32 } [ %.pn1005, %4235 ], [ %4230, %4229 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %381) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %380) #6
  br label %.loopexit.split-lp

4237:                                             ; preds = %4213
  %4238 = landingpad { ptr, i32 }
          cleanup
  br label %4241

4239:                                             ; preds = %4214
  %4240 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %382) #6
  br label %4241

4241:                                             ; preds = %4239, %4237
  %.pn1008 = phi { ptr, i32 } [ %4240, %4239 ], [ %4238, %4237 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %382) #6
  br label %.loopexit.split-lp

4242:                                             ; preds = %4216
  %4243 = landingpad { ptr, i32 }
          cleanup
  br label %4246

4244:                                             ; preds = %4217
  %4245 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %383) #6
  br label %4246

4246:                                             ; preds = %4244, %4242
  %.pn1010 = phi { ptr, i32 } [ %4245, %4244 ], [ %4243, %4242 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %383) #6
  br label %.loopexit.split-lp

4247:                                             ; preds = %4221
  %4248 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %384) #6
  br label %.loopexit.split-lp

4249:                                             ; preds = %4225
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4250 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4250:                                             ; preds = %4249
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %385) #6
  store i8 0, ptr %385, align 1, !tbaa !5
  %4251 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %385)
          to label %4252 unwind label %4253

4252:                                             ; preds = %4250
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %385) #6
  br label %.invoke2310

4253:                                             ; preds = %4250
  %4254 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %385) #6
  br label %.loopexit.split-lp

4255:                                             ; preds = %3881
  %4256 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1761)
          to label %4257 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4257:                                             ; preds = %4255
  %4258 = load i8, ptr %4256, align 1, !tbaa !5, !range !9, !noundef !10
  %4259 = trunc nuw i8 %4258 to i1
  br i1 %4259, label %4271, label %4260

4260:                                             ; preds = %4257
  %4261 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %14, i32 noundef 12)
          to label %4262 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4262:                                             ; preds = %4260
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %386) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %386, i32 noundef 6)
          to label %4263 unwind label %4266

4263:                                             ; preds = %4262
  %4264 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %386)
          to label %4265 unwind label %4268

4265:                                             ; preds = %4263
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %386) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %386) #6
  br label %4282

4266:                                             ; preds = %4262
  %4267 = landingpad { ptr, i32 }
          cleanup
  br label %4270

4268:                                             ; preds = %4263
  %4269 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %386) #6
  br label %4270

4270:                                             ; preds = %4268, %4266
  %.pn988 = phi { ptr, i32 } [ %4269, %4268 ], [ %4267, %4266 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %386) #6
  br label %.loopexit.split-lp

4271:                                             ; preds = %4257
  %4272 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %14, i32 noundef 8)
          to label %4273 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4273:                                             ; preds = %4271
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %387) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %387, i32 noundef 4)
          to label %4274 unwind label %4277

4274:                                             ; preds = %4273
  %4275 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %387)
          to label %4276 unwind label %4279

4276:                                             ; preds = %4274
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %387) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %387) #6
  br label %4282

4277:                                             ; preds = %4273
  %4278 = landingpad { ptr, i32 }
          cleanup
  br label %4281

4279:                                             ; preds = %4274
  %4280 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %387) #6
  br label %4281

4281:                                             ; preds = %4279, %4277
  %.pn990 = phi { ptr, i32 } [ %4280, %4279 ], [ %4278, %4277 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %387) #6
  br label %.loopexit.split-lp

4282:                                             ; preds = %4276, %4265
  %4283 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 0)
          to label %4284 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4284:                                             ; preds = %4282
  %4285 = call noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %4283)
  br i1 %4285, label %4286, label %4295

4286:                                             ; preds = %4284
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %388) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %388, i32 noundef 32)
          to label %4287 unwind label %4290

4287:                                             ; preds = %4286
  %4288 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %388)
          to label %4289 unwind label %4292

4289:                                             ; preds = %4287
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %388) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %388) #6
  br label %4304

4290:                                             ; preds = %4286
  %4291 = landingpad { ptr, i32 }
          cleanup
  br label %4294

4292:                                             ; preds = %4287
  %4293 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %388) #6
  br label %4294

4294:                                             ; preds = %4292, %4290
  %.pn994 = phi { ptr, i32 } [ %4293, %4292 ], [ %4291, %4290 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %388) #6
  br label %.loopexit.split-lp

4295:                                             ; preds = %4284
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %389) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %389, i32 noundef 48)
          to label %4296 unwind label %4299

4296:                                             ; preds = %4295
  %4297 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %389)
          to label %4298 unwind label %4301

4298:                                             ; preds = %4296
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %389) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %389) #6
  br label %4304

4299:                                             ; preds = %4295
  %4300 = landingpad { ptr, i32 }
          cleanup
  br label %4303

4301:                                             ; preds = %4296
  %4302 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %389) #6
  br label %4303

4303:                                             ; preds = %4301, %4299
  %.pn992 = phi { ptr, i32 } [ %4302, %4301 ], [ %4300, %4299 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %389) #6
  br label %.loopexit.split-lp

4304:                                             ; preds = %4298, %4289
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %390) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %391) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %391, i32 noundef 24)
          to label %4305 unwind label %4323

4305:                                             ; preds = %4304
  %4306 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %391)
          to label %4307 unwind label %4325

4307:                                             ; preds = %4305
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %390, ptr noundef nonnull align 1 dereferenceable(1) %4306)
          to label %4308 unwind label %4325

4308:                                             ; preds = %4307
  %4309 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %390)
          to label %4310 unwind label %4327

4310:                                             ; preds = %4308
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %390) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %391) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %391) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %390) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %392) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %392, i32 noundef 3)
          to label %4311 unwind label %4331

4311:                                             ; preds = %4310
  %4312 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %392)
          to label %4313 unwind label %4333

4313:                                             ; preds = %4311
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %392) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %392) #6
  %4314 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %4315 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4315:                                             ; preds = %4313
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %393) #6
  store i8 1, ptr %393, align 1, !tbaa !5
  %4316 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %393)
          to label %4317 unwind label %4336

4317:                                             ; preds = %4315
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %393) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1488 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1488:                                   ; preds = %4317, %4322
  %4318 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %4319 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1490

4319:                                             ; preds = %.preheader1488
  %4320 = load i8, ptr %4318, align 1, !tbaa !5, !range !9, !noundef !10
  %4321 = trunc nuw i8 %4320 to i1
  br i1 %4321, label %4338, label %4322

4322:                                             ; preds = %4319
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1488 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1490, !llvm.loop !87

4323:                                             ; preds = %4304
  %4324 = landingpad { ptr, i32 }
          cleanup
  br label %4330

4325:                                             ; preds = %4307, %4305
  %4326 = landingpad { ptr, i32 }
          cleanup
  br label %4329

4327:                                             ; preds = %4308
  %4328 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %390) #6
  br label %4329

4329:                                             ; preds = %4327, %4325
  %.pn996 = phi { ptr, i32 } [ %4328, %4327 ], [ %4326, %4325 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %391) #6
  br label %4330

4330:                                             ; preds = %4329, %4323
  %.pn996.pn = phi { ptr, i32 } [ %.pn996, %4329 ], [ %4324, %4323 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %391) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %390) #6
  br label %.loopexit.split-lp

4331:                                             ; preds = %4310
  %4332 = landingpad { ptr, i32 }
          cleanup
  br label %4335

4333:                                             ; preds = %4311
  %4334 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %392) #6
  br label %4335

4335:                                             ; preds = %4333, %4331
  %.pn999 = phi { ptr, i32 } [ %4334, %4333 ], [ %4332, %4331 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %392) #6
  br label %.loopexit.split-lp

4336:                                             ; preds = %4315
  %4337 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %393) #6
  br label %.loopexit.split-lp

4338:                                             ; preds = %4319
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4339 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4339:                                             ; preds = %4338
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %394) #6
  store i8 0, ptr %394, align 1, !tbaa !5
  %4340 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %394)
          to label %4341 unwind label %4342

4341:                                             ; preds = %4339
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %394) #6
  br label %.invoke2310

4342:                                             ; preds = %4339
  %4343 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %394) #6
  br label %.loopexit.split-lp

4344:                                             ; preds = %3881
  %4345 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %14, i32 noundef 2)
          to label %4346 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4346:                                             ; preds = %4344
  %4347 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 0)
          to label %4348 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4348:                                             ; preds = %4346
  %4349 = call noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %4347)
  br i1 %4349, label %4350, label %4359

4350:                                             ; preds = %4348
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %395) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %395, i32 noundef 2)
          to label %4351 unwind label %4354

4351:                                             ; preds = %4350
  %4352 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %395)
          to label %4353 unwind label %4356

4353:                                             ; preds = %4351
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %395) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %395) #6
  br label %4368

4354:                                             ; preds = %4350
  %4355 = landingpad { ptr, i32 }
          cleanup
  br label %4358

4356:                                             ; preds = %4351
  %4357 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %395) #6
  br label %4358

4358:                                             ; preds = %4356, %4354
  %.pn979 = phi { ptr, i32 } [ %4357, %4356 ], [ %4355, %4354 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %395) #6
  br label %.loopexit.split-lp

4359:                                             ; preds = %4348
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %396) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %396, i32 noundef 4)
          to label %4360 unwind label %4363

4360:                                             ; preds = %4359
  %4361 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %396)
          to label %4362 unwind label %4365

4362:                                             ; preds = %4360
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %396) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %396) #6
  br label %4368

4363:                                             ; preds = %4359
  %4364 = landingpad { ptr, i32 }
          cleanup
  br label %4367

4365:                                             ; preds = %4360
  %4366 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %396) #6
  br label %4367

4367:                                             ; preds = %4365, %4363
  %.pn977 = phi { ptr, i32 } [ %4366, %4365 ], [ %4364, %4363 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %396) #6
  br label %.loopexit.split-lp

4368:                                             ; preds = %4362, %4353
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %397) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %398) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %398, i32 noundef 24)
          to label %4369 unwind label %4390

4369:                                             ; preds = %4368
  %4370 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %398)
          to label %4371 unwind label %4392

4371:                                             ; preds = %4369
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %397, ptr noundef nonnull align 1 dereferenceable(1) %4370)
          to label %4372 unwind label %4392

4372:                                             ; preds = %4371
  %4373 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %397)
          to label %4374 unwind label %4394

4374:                                             ; preds = %4372
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %397) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %398) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %398) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %397) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %399) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %399, i32 noundef 1)
          to label %4375 unwind label %4398

4375:                                             ; preds = %4374
  %4376 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %399)
          to label %4377 unwind label %4400

4377:                                             ; preds = %4375
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %399) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %399) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %400) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %400, i32 noundef 3)
          to label %4378 unwind label %4403

4378:                                             ; preds = %4377
  %4379 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %400)
          to label %4380 unwind label %4405

4380:                                             ; preds = %4378
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %400) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %400) #6
  %4381 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %4382 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4382:                                             ; preds = %4380
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %401) #6
  store i8 1, ptr %401, align 1, !tbaa !5
  %4383 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %401)
          to label %4384 unwind label %4408

4384:                                             ; preds = %4382
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %401) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1496 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1496:                                   ; preds = %4384, %4389
  %4385 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %4386 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1498

4386:                                             ; preds = %.preheader1496
  %4387 = load i8, ptr %4385, align 1, !tbaa !5, !range !9, !noundef !10
  %4388 = trunc nuw i8 %4387 to i1
  br i1 %4388, label %4410, label %4389

4389:                                             ; preds = %4386
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1496 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1498, !llvm.loop !88

4390:                                             ; preds = %4368
  %4391 = landingpad { ptr, i32 }
          cleanup
  br label %4397

4392:                                             ; preds = %4371, %4369
  %4393 = landingpad { ptr, i32 }
          cleanup
  br label %4396

4394:                                             ; preds = %4372
  %4395 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %397) #6
  br label %4396

4396:                                             ; preds = %4394, %4392
  %.pn981 = phi { ptr, i32 } [ %4395, %4394 ], [ %4393, %4392 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %398) #6
  br label %4397

4397:                                             ; preds = %4396, %4390
  %.pn981.pn = phi { ptr, i32 } [ %.pn981, %4396 ], [ %4391, %4390 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %398) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %397) #6
  br label %.loopexit.split-lp

4398:                                             ; preds = %4374
  %4399 = landingpad { ptr, i32 }
          cleanup
  br label %4402

4400:                                             ; preds = %4375
  %4401 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %399) #6
  br label %4402

4402:                                             ; preds = %4400, %4398
  %.pn984 = phi { ptr, i32 } [ %4401, %4400 ], [ %4399, %4398 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %399) #6
  br label %.loopexit.split-lp

4403:                                             ; preds = %4377
  %4404 = landingpad { ptr, i32 }
          cleanup
  br label %4407

4405:                                             ; preds = %4378
  %4406 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %400) #6
  br label %4407

4407:                                             ; preds = %4405, %4403
  %.pn986 = phi { ptr, i32 } [ %4406, %4405 ], [ %4404, %4403 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %400) #6
  br label %.loopexit.split-lp

4408:                                             ; preds = %4382
  %4409 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %401) #6
  br label %.loopexit.split-lp

4410:                                             ; preds = %4386
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4411 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4411:                                             ; preds = %4410
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %402) #6
  store i8 0, ptr %402, align 1, !tbaa !5
  %4412 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %402)
          to label %4413 unwind label %4414

4413:                                             ; preds = %4411
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %402) #6
  br label %.invoke2310

4414:                                             ; preds = %4411
  %4415 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %402) #6
  br label %.loopexit.split-lp

4416:                                             ; preds = %3881
  %4417 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %14, i32 noundef 8)
          to label %4418 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4418:                                             ; preds = %4416
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %403) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %403, i32 noundef 20)
          to label %4419 unwind label %4443

4419:                                             ; preds = %4418
  %4420 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %403)
          to label %4421 unwind label %4445

4421:                                             ; preds = %4419
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %403) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %403) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %404) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %405) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %405, i32 noundef 24)
          to label %4422 unwind label %4448

4422:                                             ; preds = %4421
  %4423 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %405)
          to label %4424 unwind label %4450

4424:                                             ; preds = %4422
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %404, ptr noundef nonnull align 1 dereferenceable(1) %4423)
          to label %4425 unwind label %4450

4425:                                             ; preds = %4424
  %4426 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %404)
          to label %4427 unwind label %4452

4427:                                             ; preds = %4425
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %404) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %405) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %405) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %404) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %406) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %406, i32 noundef 4)
          to label %4428 unwind label %4456

4428:                                             ; preds = %4427
  %4429 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %406)
          to label %4430 unwind label %4458

4430:                                             ; preds = %4428
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %406) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %406) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %407) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %407, i32 noundef 3)
          to label %4431 unwind label %4461

4431:                                             ; preds = %4430
  %4432 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %407)
          to label %4433 unwind label %4463

4433:                                             ; preds = %4431
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %407) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %407) #6
  %4434 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %4435 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4435:                                             ; preds = %4433
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %408) #6
  store i8 1, ptr %408, align 1, !tbaa !5
  %4436 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %408)
          to label %4437 unwind label %4466

4437:                                             ; preds = %4435
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %408) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1503 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1503:                                   ; preds = %4437, %4442
  %4438 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %4439 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1505

4439:                                             ; preds = %.preheader1503
  %4440 = load i8, ptr %4438, align 1, !tbaa !5, !range !9, !noundef !10
  %4441 = trunc nuw i8 %4440 to i1
  br i1 %4441, label %4468, label %4442

4442:                                             ; preds = %4439
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1503 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1505, !llvm.loop !89

4443:                                             ; preds = %4418
  %4444 = landingpad { ptr, i32 }
          cleanup
  br label %4447

4445:                                             ; preds = %4419
  %4446 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %403) #6
  br label %4447

4447:                                             ; preds = %4445, %4443
  %.pn968 = phi { ptr, i32 } [ %4446, %4445 ], [ %4444, %4443 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %403) #6
  br label %.loopexit.split-lp

4448:                                             ; preds = %4421
  %4449 = landingpad { ptr, i32 }
          cleanup
  br label %4455

4450:                                             ; preds = %4424, %4422
  %4451 = landingpad { ptr, i32 }
          cleanup
  br label %4454

4452:                                             ; preds = %4425
  %4453 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %404) #6
  br label %4454

4454:                                             ; preds = %4452, %4450
  %.pn970 = phi { ptr, i32 } [ %4453, %4452 ], [ %4451, %4450 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %405) #6
  br label %4455

4455:                                             ; preds = %4454, %4448
  %.pn970.pn = phi { ptr, i32 } [ %.pn970, %4454 ], [ %4449, %4448 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %405) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %404) #6
  br label %.loopexit.split-lp

4456:                                             ; preds = %4427
  %4457 = landingpad { ptr, i32 }
          cleanup
  br label %4460

4458:                                             ; preds = %4428
  %4459 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %406) #6
  br label %4460

4460:                                             ; preds = %4458, %4456
  %.pn973 = phi { ptr, i32 } [ %4459, %4458 ], [ %4457, %4456 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %406) #6
  br label %.loopexit.split-lp

4461:                                             ; preds = %4430
  %4462 = landingpad { ptr, i32 }
          cleanup
  br label %4465

4463:                                             ; preds = %4431
  %4464 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %407) #6
  br label %4465

4465:                                             ; preds = %4463, %4461
  %.pn975 = phi { ptr, i32 } [ %4464, %4463 ], [ %4462, %4461 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %407) #6
  br label %.loopexit.split-lp

4466:                                             ; preds = %4435
  %4467 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %408) #6
  br label %.loopexit.split-lp

4468:                                             ; preds = %4439
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4469 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4469:                                             ; preds = %4468
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %409) #6
  store i8 0, ptr %409, align 1, !tbaa !5
  %4470 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %409)
          to label %4471 unwind label %4472

4471:                                             ; preds = %4469
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %409) #6
  br label %.invoke2310

4472:                                             ; preds = %4469
  %4473 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %409) #6
  br label %.loopexit.split-lp

4474:                                             ; preds = %3881
  %4475 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %14, i32 noundef 2)
          to label %4476 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4476:                                             ; preds = %4474
  %4477 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 0)
          to label %.invoke2311 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.invoke2311:                                      ; preds = %4476
  %4478 = call noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %4477)
  %not. = xor i1 %4478, true
  %.2321 = zext i1 %not. to i32
  %4479 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %7, i32 noundef %.2321)
          to label %4480 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4480:                                             ; preds = %.invoke2311
  %4481 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %7)
          to label %4482 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4482:                                             ; preds = %4480
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %410) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %411) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %411, i32 noundef 24)
          to label %4483 unwind label %4504

4483:                                             ; preds = %4482
  %4484 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %411)
          to label %4485 unwind label %4506

4485:                                             ; preds = %4483
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %410, ptr noundef nonnull align 1 dereferenceable(1) %4484)
          to label %4486 unwind label %4506

4486:                                             ; preds = %4485
  %4487 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %410)
          to label %4488 unwind label %4508

4488:                                             ; preds = %4486
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %410) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %411) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %411) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %410) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %412) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %412, i32 noundef 1)
          to label %4489 unwind label %4512

4489:                                             ; preds = %4488
  %4490 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %412)
          to label %4491 unwind label %4514

4491:                                             ; preds = %4489
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %412) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %412) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %413) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %413, i32 noundef 3)
          to label %4492 unwind label %4517

4492:                                             ; preds = %4491
  %4493 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %413)
          to label %4494 unwind label %4519

4494:                                             ; preds = %4492
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %413) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %413) #6
  %4495 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %4496 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4496:                                             ; preds = %4494
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %414) #6
  store i8 1, ptr %414, align 1, !tbaa !5
  %4497 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %414)
          to label %4498 unwind label %4522

4498:                                             ; preds = %4496
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %414) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1518 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1518:                                   ; preds = %4498, %4503
  %4499 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %4500 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1520

4500:                                             ; preds = %.preheader1518
  %4501 = load i8, ptr %4499, align 1, !tbaa !5, !range !9, !noundef !10
  %4502 = trunc nuw i8 %4501 to i1
  br i1 %4502, label %4524, label %4503

4503:                                             ; preds = %4500
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1518 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1520, !llvm.loop !90

4504:                                             ; preds = %4482
  %4505 = landingpad { ptr, i32 }
          cleanup
  br label %4511

4506:                                             ; preds = %4485, %4483
  %4507 = landingpad { ptr, i32 }
          cleanup
  br label %4510

4508:                                             ; preds = %4486
  %4509 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %410) #6
  br label %4510

4510:                                             ; preds = %4508, %4506
  %.pn961 = phi { ptr, i32 } [ %4509, %4508 ], [ %4507, %4506 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %411) #6
  br label %4511

4511:                                             ; preds = %4510, %4504
  %.pn961.pn = phi { ptr, i32 } [ %.pn961, %4510 ], [ %4505, %4504 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %411) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %410) #6
  br label %.loopexit.split-lp

4512:                                             ; preds = %4488
  %4513 = landingpad { ptr, i32 }
          cleanup
  br label %4516

4514:                                             ; preds = %4489
  %4515 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %412) #6
  br label %4516

4516:                                             ; preds = %4514, %4512
  %.pn964 = phi { ptr, i32 } [ %4515, %4514 ], [ %4513, %4512 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %412) #6
  br label %.loopexit.split-lp

4517:                                             ; preds = %4491
  %4518 = landingpad { ptr, i32 }
          cleanup
  br label %4521

4519:                                             ; preds = %4492
  %4520 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %413) #6
  br label %4521

4521:                                             ; preds = %4519, %4517
  %.pn966 = phi { ptr, i32 } [ %4520, %4519 ], [ %4518, %4517 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %413) #6
  br label %.loopexit.split-lp

4522:                                             ; preds = %4496
  %4523 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %414) #6
  br label %.loopexit.split-lp

4524:                                             ; preds = %4500
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4525 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4525:                                             ; preds = %4524
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %415) #6
  store i8 0, ptr %415, align 1, !tbaa !5
  %4526 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %415)
          to label %4527 unwind label %4546

4527:                                             ; preds = %4525
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %415) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4528 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4528:                                             ; preds = %4527
  %4529 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 8 dereferenceable(24) %7)
  %4530 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef 0)
          to label %4531 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4531:                                             ; preds = %4528
  %4532 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %4533 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4533:                                             ; preds = %4531
  %4534 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %4535 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4535:                                             ; preds = %4533
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %416) #6
  store i8 0, ptr %416, align 1, !tbaa !5
  %4536 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %416)
          to label %4537 unwind label %4548

4537:                                             ; preds = %4535
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %416) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %417) #6
  store i8 1, ptr %417, align 1, !tbaa !5
  %4538 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %417)
          to label %4539 unwind label %4550

4539:                                             ; preds = %4537
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %417) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1511 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1511:                                   ; preds = %4539, %4554
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %418) #6
  store i8 0, ptr %418, align 1, !tbaa !5
  %4540 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %418)
          to label %4541 unwind label %4552

4541:                                             ; preds = %.preheader1511
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %418) #6
  %4542 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %4543 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1513

4543:                                             ; preds = %4541
  %4544 = load i8, ptr %4542, align 1, !tbaa !5, !range !9, !noundef !10
  %4545 = trunc nuw i8 %4544 to i1
  br i1 %4545, label %.invoke2310, label %4554

.invoke2310:                                      ; preds = %4543, %4019, %3976, %3942, %3908, %4108, %4180, %4252, %4341, %4413, %4471
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4935 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4546:                                             ; preds = %4525
  %4547 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %415) #6
  br label %.loopexit.split-lp

4548:                                             ; preds = %4535
  %4549 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %416) #6
  br label %.loopexit.split-lp

4550:                                             ; preds = %4537
  %4551 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %417) #6
  br label %.loopexit.split-lp

4552:                                             ; preds = %.preheader1511
  %4553 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %418) #6
  br label %.loopexit.split-lp

4554:                                             ; preds = %4543
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1511 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1513, !llvm.loop !91

4555:                                             ; preds = %3881
  %4556 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %16, i32 noundef 0)
          to label %4557 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4557:                                             ; preds = %4555
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %419) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %419, i32 noundef 11)
          to label %4558 unwind label %4581

4558:                                             ; preds = %4557
  %4559 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %419)
          to label %4560 unwind label %4583

4560:                                             ; preds = %4558
  %4561 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %4559)
          to label %4562 unwind label %4583

4562:                                             ; preds = %4560
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %419) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %419) #6
  %4563 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %4564 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4564:                                             ; preds = %4562
  %4565 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %4566 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4566:                                             ; preds = %4564
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %420) #6
  store i8 1, ptr %420, align 1, !tbaa !5
  %4567 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %420)
          to label %4568 unwind label %4586

4568:                                             ; preds = %4566
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %420) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %421) #6
  store i8 1, ptr %421, align 1, !tbaa !5
  %4569 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %421)
          to label %4570 unwind label %4588

4570:                                             ; preds = %4568
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %421) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1563 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1563:                                   ; preds = %4570, %4592
  %4571 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %4572 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1565

4572:                                             ; preds = %.preheader1563
  %4573 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %4571)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %422) #6
  store i8 0, ptr %422, align 1, !tbaa !5
  %4574 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %422)
          to label %4575 unwind label %4590

4575:                                             ; preds = %4572
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %422) #6
  %4576 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %4577 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1565

4577:                                             ; preds = %4575
  %4578 = load i8, ptr %4576, align 1, !tbaa !5, !range !9, !noundef !10
  %4579 = trunc nuw i8 %4578 to i1
  br i1 %4579, label %4580, label %4592

4580:                                             ; preds = %4577
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4593 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4581:                                             ; preds = %4557
  %4582 = landingpad { ptr, i32 }
          cleanup
  br label %4585

4583:                                             ; preds = %4560, %4558
  %4584 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %419) #6
  br label %4585

4585:                                             ; preds = %4583, %4581
  %.pn941 = phi { ptr, i32 } [ %4584, %4583 ], [ %4582, %4581 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %419) #6
  br label %.loopexit.split-lp

4586:                                             ; preds = %4566
  %4587 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %420) #6
  br label %.loopexit.split-lp

4588:                                             ; preds = %4568
  %4589 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %421) #6
  br label %.loopexit.split-lp

4590:                                             ; preds = %4572
  %4591 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %422) #6
  br label %.loopexit.split-lp

4592:                                             ; preds = %4577
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1563 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1565, !llvm.loop !92

4593:                                             ; preds = %4580
  %4594 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 13, i32 noundef 0)
          to label %4595 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4595:                                             ; preds = %4593
  %4596 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %7, ptr noundef nonnull align 8 dereferenceable(28) %4594)
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %423) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %423, i32 noundef 24)
          to label %4597 unwind label %4625

4597:                                             ; preds = %4595
  %4598 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %423)
          to label %4599 unwind label %4627

4599:                                             ; preds = %4597
  %4600 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %4598)
          to label %4601 unwind label %4627

4601:                                             ; preds = %4599
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %423) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %423) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %424) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %424, i32 noundef 13)
          to label %4602 unwind label %4630

4602:                                             ; preds = %4601
  %4603 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %424)
          to label %4604 unwind label %4632

4604:                                             ; preds = %4602
  %4605 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %4603)
          to label %4606 unwind label %4632

4606:                                             ; preds = %4604
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %424) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %424) #6
  %4607 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %4608 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4608:                                             ; preds = %4606
  %4609 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %4610 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4610:                                             ; preds = %4608
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %425) #6
  store i8 1, ptr %425, align 1, !tbaa !5
  %4611 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %425)
          to label %4612 unwind label %4635

4612:                                             ; preds = %4610
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %425) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %426) #6
  store i8 1, ptr %426, align 1, !tbaa !5
  %4613 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %426)
          to label %4614 unwind label %4637

4614:                                             ; preds = %4612
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %426) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1556 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1556:                                   ; preds = %4614, %4641
  %4615 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %4616 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1558

4616:                                             ; preds = %.preheader1556
  %4617 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %4615)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %427) #6
  store i8 0, ptr %427, align 1, !tbaa !5
  %4618 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %427)
          to label %4619 unwind label %4639

4619:                                             ; preds = %4616
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %427) #6
  %4620 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %4621 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1558

4621:                                             ; preds = %4619
  %4622 = load i8, ptr %4620, align 1, !tbaa !5, !range !9, !noundef !10
  %4623 = trunc nuw i8 %4622 to i1
  br i1 %4623, label %4624, label %4641

4624:                                             ; preds = %4621
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4642 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4625:                                             ; preds = %4595
  %4626 = landingpad { ptr, i32 }
          cleanup
  br label %4629

4627:                                             ; preds = %4599, %4597
  %4628 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %423) #6
  br label %4629

4629:                                             ; preds = %4627, %4625
  %.pn943 = phi { ptr, i32 } [ %4628, %4627 ], [ %4626, %4625 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %423) #6
  br label %.loopexit.split-lp

4630:                                             ; preds = %4601
  %4631 = landingpad { ptr, i32 }
          cleanup
  br label %4634

4632:                                             ; preds = %4604, %4602
  %4633 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %424) #6
  br label %4634

4634:                                             ; preds = %4632, %4630
  %.pn945 = phi { ptr, i32 } [ %4633, %4632 ], [ %4631, %4630 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %424) #6
  br label %.loopexit.split-lp

4635:                                             ; preds = %4610
  %4636 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %425) #6
  br label %.loopexit.split-lp

4637:                                             ; preds = %4612
  %4638 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %426) #6
  br label %.loopexit.split-lp

4639:                                             ; preds = %4616
  %4640 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %427) #6
  br label %.loopexit.split-lp

4641:                                             ; preds = %4621
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1556 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1558, !llvm.loop !93

4642:                                             ; preds = %4624
  %4643 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 11, i32 noundef 0)
          to label %4644 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4644:                                             ; preds = %4642
  %4645 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %22, ptr noundef nonnull align 8 dereferenceable(28) %4643)
  %4646 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 11, i32 noundef 0)
          to label %4647 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4647:                                             ; preds = %4644
  %4648 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %14, ptr noundef nonnull align 8 dereferenceable(28) %4646)
  %4649 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef -48)
          to label %.preheader1548 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1548:                                   ; preds = %4647
  %4650 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %4651 = icmp slt i64 %4650, 2
  br i1 %4651, label %._crit_edge2204, label %.lr.ph2203

._crit_edge2204:                                  ; preds = %4811, %.preheader1548
  %.021.lcssa = phi i1 [ false, %.preheader1548 ], [ %.122, %4811 ]
  %4652 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %16, i32 noundef 0)
          to label %4653 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4653:                                             ; preds = %._crit_edge2204
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4820 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.lr.ph2203:                                       ; preds = %.preheader1548, %4811
  %.0202202 = phi i1 [ false, %4811 ], [ true, %.preheader1548 ]
  %.0212201 = phi i1 [ %.122, %4811 ], [ false, %.preheader1548 ]
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4654 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

4654:                                             ; preds = %.lr.ph2203
  %4655 = call noundef zeroext i1 @_ZN5sc_dtgtERKNS_11sc_int_baseES2_(ptr noundef nonnull align 8 dereferenceable(24) %22, ptr noundef nonnull align 8 dereferenceable(24) %4)
  br i1 %4655, label %4656, label %4664

4656:                                             ; preds = %4654
  %4657 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef 7, i32 noundef 1)
          to label %4658 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

4658:                                             ; preds = %4656
  %4659 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %16, ptr noundef nonnull align 8 dereferenceable(28) %4657)
          to label %4660 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

4660:                                             ; preds = %4658
  %4661 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %4662 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %4)
  %4663 = sub nsw i64 %4661, %4662
  br label %4671

4664:                                             ; preds = %4654
  %4665 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %22, i32 noundef 7, i32 noundef 1)
          to label %4666 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

4666:                                             ; preds = %4664
  %4667 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %16, ptr noundef nonnull align 8 dereferenceable(28) %4665)
          to label %4668 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

4668:                                             ; preds = %4666
  %4669 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %4670 = and i64 %4669, 1
  br label %4671

4671:                                             ; preds = %4668, %4660
  %.sink = phi i64 [ %4670, %4668 ], [ %4663, %4660 ]
  %4672 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %.sink)
  %4673 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %7)
          to label %4674 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

4674:                                             ; preds = %4671
  %4675 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %4676 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

4676:                                             ; preds = %4674
  %4677 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %16)
          to label %4678 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

4678:                                             ; preds = %4676
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %428) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %428, i32 noundef 3)
          to label %4679 unwind label %4691

4679:                                             ; preds = %4678
  %4680 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %428)
          to label %4681 unwind label %4693

4681:                                             ; preds = %4679
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %428) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %428) #6
  %4682 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %4683 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

4683:                                             ; preds = %4681
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %429) #6
  store i8 1, ptr %429, align 1, !tbaa !5
  %4684 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %429)
          to label %4685 unwind label %4696

4685:                                             ; preds = %4683
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %429) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1280 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

.preheader1280:                                   ; preds = %4685, %4690
  %4686 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %4687 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit

4687:                                             ; preds = %.preheader1280
  %4688 = load i8, ptr %4686, align 1, !tbaa !5, !range !9, !noundef !10
  %4689 = trunc nuw i8 %4688 to i1
  br i1 %4689, label %4698, label %4690

4690:                                             ; preds = %4687
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1280 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !94

4691:                                             ; preds = %4678
  %4692 = landingpad { ptr, i32 }
          cleanup
  br label %4695

4693:                                             ; preds = %4679
  %4694 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %428) #6
  br label %4695

4695:                                             ; preds = %4693, %4691
  %.pn947 = phi { ptr, i32 } [ %4694, %4693 ], [ %4692, %4691 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %428) #6
  br label %.loopexit.split-lp

4696:                                             ; preds = %4683
  %4697 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %429) #6
  br label %.loopexit.split-lp

4698:                                             ; preds = %4687
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4699 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

4699:                                             ; preds = %4698
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %430) #6
  store i8 0, ptr %430, align 1, !tbaa !5
  %4700 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %430)
          to label %4701 unwind label %4704

4701:                                             ; preds = %4699
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %430) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4702 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

4702:                                             ; preds = %4701
  br i1 %4655, label %4706, label %4703

4703:                                             ; preds = %4702
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4820 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4704:                                             ; preds = %4699
  %4705 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %430) #6
  br label %.loopexit.split-lp

4706:                                             ; preds = %4702
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4707 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

4707:                                             ; preds = %4706
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %431) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %431, i32 noundef -8192)
          to label %4708 unwind label %4727

4708:                                             ; preds = %4707
  %4709 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %431)
          to label %4710 unwind label %4729

4710:                                             ; preds = %4708
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %431) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %431) #6
  %4711 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %4712 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

4712:                                             ; preds = %4710
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %432) #6
  store i8 1, ptr %432, align 1, !tbaa !5
  %4713 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %432)
          to label %4714 unwind label %4732

4714:                                             ; preds = %4712
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %432) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %433) #6
  store i8 1, ptr %433, align 1, !tbaa !5
  %4715 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %433)
          to label %4716 unwind label %4734

4716:                                             ; preds = %4714
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %433) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1276 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

.preheader1276:                                   ; preds = %4716, %4738
  %4717 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %4718 unwind label %.loopexit.split-lp.loopexit

4718:                                             ; preds = %.preheader1276
  %4719 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %4717)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %434) #6
  store i8 0, ptr %434, align 1, !tbaa !5
  %4720 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %434)
          to label %4721 unwind label %4736

4721:                                             ; preds = %4718
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %434) #6
  %4722 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %4723 unwind label %.loopexit.split-lp.loopexit

4723:                                             ; preds = %4721
  %4724 = load i8, ptr %4722, align 1, !tbaa !5, !range !9, !noundef !10
  %4725 = trunc nuw i8 %4724 to i1
  br i1 %4725, label %4726, label %4738

4726:                                             ; preds = %4723
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4739 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

4727:                                             ; preds = %4707
  %4728 = landingpad { ptr, i32 }
          cleanup
  br label %4731

4729:                                             ; preds = %4708
  %4730 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %431) #6
  br label %4731

4731:                                             ; preds = %4729, %4727
  %.pn949 = phi { ptr, i32 } [ %4730, %4729 ], [ %4728, %4727 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %431) #6
  br label %.loopexit.split-lp

4732:                                             ; preds = %4712
  %4733 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %432) #6
  br label %.loopexit.split-lp

4734:                                             ; preds = %4714
  %4735 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %433) #6
  br label %.loopexit.split-lp

4736:                                             ; preds = %4718
  %4737 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %434) #6
  br label %.loopexit.split-lp

4738:                                             ; preds = %4723
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1276 unwind label %.loopexit.split-lp.loopexit, !llvm.loop !95

4739:                                             ; preds = %4726
  br i1 %.0202202, label %4740, label %4747

4740:                                             ; preds = %4739
  %4741 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 13, i32 noundef 7)
          to label %4742 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

4742:                                             ; preds = %4740
  %4743 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %15, ptr noundef nonnull align 8 dereferenceable(28) %4741)
          to label %4744 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

4744:                                             ; preds = %4742
  %4745 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 8 dereferenceable(24) %5)
  %4746 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %2, ptr noundef nonnull align 8 dereferenceable(24) %2)
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4795 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

4747:                                             ; preds = %4739
  %4748 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %15, ptr noundef nonnull align 8 dereferenceable(24) %15)
  %4749 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 13, i32 noundef 7)
          to label %4750 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

4750:                                             ; preds = %4747
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %435) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %435, i32 noundef 2)
          to label %4751 unwind label %4778

4751:                                             ; preds = %4750
  %4752 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %4749, ptr noundef nonnull align 8 dereferenceable(8) %435)
          to label %4753 unwind label %4780

4753:                                             ; preds = %4751
  %4754 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %4752)
          to label %4755 unwind label %4780

4755:                                             ; preds = %4753
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %435) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %435) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %436) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %436, i32 noundef -4)
          to label %4756 unwind label %4783

4756:                                             ; preds = %4755
  %4757 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 12, i32 noundef 0)
          to label %4758 unwind label %4785

4758:                                             ; preds = %4756
  %4759 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %436, ptr noundef nonnull align 8 dereferenceable(8) %4757)
          to label %4760 unwind label %4785

4760:                                             ; preds = %4758
  %4761 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %2, ptr noundef nonnull align 1 dereferenceable(1) %4759)
          to label %4762 unwind label %4785

4762:                                             ; preds = %4760
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %436) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %436) #6
  %4763 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %4764 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

4764:                                             ; preds = %4762
  %4765 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %4766 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

4766:                                             ; preds = %4764
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %437) #6
  store i8 0, ptr %437, align 1, !tbaa !5
  %4767 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %437)
          to label %4768 unwind label %4788

4768:                                             ; preds = %4766
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %437) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %438) #6
  store i8 1, ptr %438, align 1, !tbaa !5
  %4769 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %438)
          to label %4770 unwind label %4790

4770:                                             ; preds = %4768
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %438) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

.preheader:                                       ; preds = %4770, %4794
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %439) #6
  store i8 0, ptr %439, align 1, !tbaa !5
  %4771 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %439)
          to label %4772 unwind label %4792

4772:                                             ; preds = %.preheader
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %439) #6
  %4773 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %4774 unwind label %.loopexit

4774:                                             ; preds = %4772
  %4775 = load i8, ptr %4773, align 1, !tbaa !5, !range !9, !noundef !10
  %4776 = trunc nuw i8 %4775 to i1
  br i1 %4776, label %4777, label %4794

4777:                                             ; preds = %4774
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4795 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

4778:                                             ; preds = %4750
  %4779 = landingpad { ptr, i32 }
          cleanup
  br label %4782

4780:                                             ; preds = %4753, %4751
  %4781 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %435) #6
  br label %4782

4782:                                             ; preds = %4780, %4778
  %.pn951 = phi { ptr, i32 } [ %4781, %4780 ], [ %4779, %4778 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %435) #6
  br label %.loopexit.split-lp

4783:                                             ; preds = %4755
  %4784 = landingpad { ptr, i32 }
          cleanup
  br label %4787

4785:                                             ; preds = %4760, %4758, %4756
  %4786 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %436) #6
  br label %4787

4787:                                             ; preds = %4785, %4783
  %.pn953 = phi { ptr, i32 } [ %4786, %4785 ], [ %4784, %4783 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %436) #6
  br label %.loopexit.split-lp

4788:                                             ; preds = %4766
  %4789 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %437) #6
  br label %.loopexit.split-lp

4790:                                             ; preds = %4768
  %4791 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %438) #6
  br label %.loopexit.split-lp

4792:                                             ; preds = %.preheader
  %4793 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %439) #6
  br label %.loopexit.split-lp

4794:                                             ; preds = %4774
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader unwind label %.loopexit, !llvm.loop !96

4795:                                             ; preds = %4777, %4744
  %.122 = phi i1 [ true, %4744 ], [ %.0212201, %4777 ]
  %4796 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %4, i32 noundef -16)
          to label %4797 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

4797:                                             ; preds = %4795
  %4798 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %7)
  %4799 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
  %4800 = add nsw i64 %4799, %4798
  %4801 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %7, i64 noundef %4800)
          to label %4802 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

4802:                                             ; preds = %4797
  %4803 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 13, i32 noundef 7)
          to label %4804 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

4804:                                             ; preds = %4802
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %440) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %440, i32 noundef 8)
          to label %4805 unwind label %4815

4805:                                             ; preds = %4804
  %4806 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %4803, ptr noundef nonnull align 8 dereferenceable(8) %440)
          to label %4807 unwind label %4817

4807:                                             ; preds = %4805
  %4808 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 1 dereferenceable(1) %4806)
          to label %4809 unwind label %4817

4809:                                             ; preds = %4807
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %440) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %440) #6
  %4810 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 13, i32 noundef 0)
          to label %4811 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550

4811:                                             ; preds = %4809
  %4812 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %9, ptr noundef nonnull align 8 dereferenceable(28) %4810)
  %4813 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %4814 = icmp slt i64 %4813, 2
  br i1 %4814, label %._crit_edge2204, label %.lr.ph2203, !llvm.loop !97

4815:                                             ; preds = %4804
  %4816 = landingpad { ptr, i32 }
          cleanup
  br label %4819

4817:                                             ; preds = %4807, %4805
  %4818 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %440) #6
  br label %4819

4819:                                             ; preds = %4817, %4815
  %.pn955 = phi { ptr, i32 } [ %4818, %4817 ], [ %4816, %4815 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %440) #6
  br label %.loopexit.split-lp

4820:                                             ; preds = %4703, %4653
  %.0212166 = phi i1 [ %.0212201, %4703 ], [ %.021.lcssa, %4653 ]
  %.0202142 = phi i1 [ %.0202202, %4703 ], [ %4651, %4653 ]
  %4821 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %22, i32 noundef 0)
          to label %4822 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4822:                                             ; preds = %4820
  %4823 = call noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %4821)
  br i1 %4823, label %.invoke2309, label %4824

4824:                                             ; preds = %4822
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4825 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4825:                                             ; preds = %4824
  %4826 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %7)
  %4827 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
  %4828 = add nsw i64 %4827, %4826
  %4829 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %5, i64 noundef %4828)
          to label %4830 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4830:                                             ; preds = %4825
  %4831 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %4832 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4832:                                             ; preds = %4830
  %4833 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %4834 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4834:                                             ; preds = %4832
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %441) #6
  store i8 1, ptr %441, align 1, !tbaa !5
  %4835 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %441)
          to label %4836 unwind label %4849

4836:                                             ; preds = %4834
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %441) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %442) #6
  store i8 1, ptr %442, align 1, !tbaa !5
  %4837 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %442)
          to label %4838 unwind label %4851

4838:                                             ; preds = %4836
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %442) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1541 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1541:                                   ; preds = %4838, %4855
  %4839 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %4840 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1543

4840:                                             ; preds = %.preheader1541
  %4841 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %4839)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %443) #6
  store i8 0, ptr %443, align 1, !tbaa !5
  %4842 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %443)
          to label %4843 unwind label %4853

4843:                                             ; preds = %4840
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %443) #6
  %4844 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %4845 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1543

4845:                                             ; preds = %4843
  %4846 = load i8, ptr %4844, align 1, !tbaa !5, !range !9, !noundef !10
  %4847 = trunc nuw i8 %4846 to i1
  br i1 %4847, label %4848, label %4855

4848:                                             ; preds = %4845
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4856 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4849:                                             ; preds = %4834
  %4850 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %441) #6
  br label %.loopexit.split-lp

4851:                                             ; preds = %4836
  %4852 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %442) #6
  br label %.loopexit.split-lp

4853:                                             ; preds = %4840
  %4854 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %443) #6
  br label %.loopexit.split-lp

4855:                                             ; preds = %4845
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1541 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1543, !llvm.loop !98

4856:                                             ; preds = %4848
  %4857 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %8)
  %4858 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %16)
  %4859 = add nsw i64 %4858, %4857
  %4860 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %5, i64 noundef %4859)
          to label %4861 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4861:                                             ; preds = %4856
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %444) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %444, i32 noundef 0)
          to label %4862 unwind label %4883

4862:                                             ; preds = %4861
  %4863 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 7, i32 noundef 0)
          to label %4864 unwind label %4885

4864:                                             ; preds = %4862
  %4865 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %444, ptr noundef nonnull align 8 dereferenceable(8) %4863)
          to label %4866 unwind label %4885

4866:                                             ; preds = %4864
  %4867 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %2, ptr noundef nonnull align 1 dereferenceable(1) %4865)
          to label %4868 unwind label %4885

4868:                                             ; preds = %4866
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %444) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %444) #6
  %4869 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %4870 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4870:                                             ; preds = %4868
  %4871 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %4872 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4872:                                             ; preds = %4870
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %445) #6
  store i8 0, ptr %445, align 1, !tbaa !5
  %4873 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %445)
          to label %4874 unwind label %4888

4874:                                             ; preds = %4872
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %445) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %446) #6
  store i8 1, ptr %446, align 1, !tbaa !5
  %4875 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %446)
          to label %4876 unwind label %4890

4876:                                             ; preds = %4874
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %446) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1533 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1533:                                   ; preds = %4876, %4894
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %447) #6
  store i8 0, ptr %447, align 1, !tbaa !5
  %4877 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %447)
          to label %4878 unwind label %4892

4878:                                             ; preds = %.preheader1533
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %447) #6
  %4879 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %4880 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1535

4880:                                             ; preds = %4878
  %4881 = load i8, ptr %4879, align 1, !tbaa !5, !range !9, !noundef !10
  %4882 = trunc nuw i8 %4881 to i1
  br i1 %4882, label %.invoke2309, label %4894

.invoke2309:                                      ; preds = %4880, %4822
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4895 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4883:                                             ; preds = %4861
  %4884 = landingpad { ptr, i32 }
          cleanup
  br label %4887

4885:                                             ; preds = %4866, %4864, %4862
  %4886 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %444) #6
  br label %4887

4887:                                             ; preds = %4885, %4883
  %.pn957 = phi { ptr, i32 } [ %4886, %4885 ], [ %4884, %4883 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %444) #6
  br label %.loopexit.split-lp

4888:                                             ; preds = %4872
  %4889 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %445) #6
  br label %.loopexit.split-lp

4890:                                             ; preds = %4874
  %4891 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %446) #6
  br label %.loopexit.split-lp

4892:                                             ; preds = %.preheader1533
  %4893 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %447) #6
  br label %.loopexit.split-lp

4894:                                             ; preds = %4880
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1533 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1535, !llvm.loop !99

4895:                                             ; preds = %.invoke2309
  br i1 %.0202142, label %.invoke2308, label %4896

4896:                                             ; preds = %4895
  %4897 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 13, i32 noundef 7)
          to label %4898 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4898:                                             ; preds = %4896
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %448) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %448, i32 noundef 2)
          to label %4899 unwind label %4920

4899:                                             ; preds = %4898
  %4900 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %4897, ptr noundef nonnull align 8 dereferenceable(8) %448)
          to label %4901 unwind label %4922

4901:                                             ; preds = %4899
  %4902 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %4900)
          to label %4903 unwind label %4922

4903:                                             ; preds = %4901
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %448) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %448) #6
  %4904 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef 0)
          to label %4905 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4905:                                             ; preds = %4903
  %4906 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %4907 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4907:                                             ; preds = %4905
  %4908 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %4909 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4909:                                             ; preds = %4907
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %449) #6
  store i8 0, ptr %449, align 1, !tbaa !5
  %4910 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %449)
          to label %4911 unwind label %4925

4911:                                             ; preds = %4909
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %449) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %450) #6
  store i8 1, ptr %450, align 1, !tbaa !5
  %4912 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %450)
          to label %4913 unwind label %4927

4913:                                             ; preds = %4911
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %450) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1526 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1526:                                   ; preds = %4913, %4931
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %451) #6
  store i8 0, ptr %451, align 1, !tbaa !5
  %4914 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %451)
          to label %4915 unwind label %4929

4915:                                             ; preds = %.preheader1526
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %451) #6
  %4916 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %4917 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1528

4917:                                             ; preds = %4915
  %4918 = load i8, ptr %4916, align 1, !tbaa !5, !range !9, !noundef !10
  %4919 = trunc nuw i8 %4918 to i1
  br i1 %4919, label %.invoke2308, label %4931

4920:                                             ; preds = %4898
  %4921 = landingpad { ptr, i32 }
          cleanup
  br label %4924

4922:                                             ; preds = %4901, %4899
  %4923 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %448) #6
  br label %4924

4924:                                             ; preds = %4922, %4920
  %.pn959 = phi { ptr, i32 } [ %4923, %4922 ], [ %4921, %4920 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %448) #6
  br label %.loopexit.split-lp

4925:                                             ; preds = %4909
  %4926 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %449) #6
  br label %.loopexit.split-lp

4927:                                             ; preds = %4911
  %4928 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %450) #6
  br label %.loopexit.split-lp

4929:                                             ; preds = %.preheader1526
  %4930 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %451) #6
  br label %.loopexit.split-lp

4931:                                             ; preds = %4917
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1526 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1528, !llvm.loop !100

.invoke2308:                                      ; preds = %4917, %4895
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4935 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4932:                                             ; preds = %3881
  %4933 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %27, i32 noundef -3)
          to label %4934 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4934:                                             ; preds = %4932
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.invoke2303 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4935:                                             ; preds = %.invoke2310, %.invoke2308
  %.223.ph = phi i1 [ %.0212166, %.invoke2308 ], [ false, %.invoke2310 ]
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4936 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4936:                                             ; preds = %4935
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %452) #6
  %4937 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %15)
          to label %4938 unwind label %4966

4938:                                             ; preds = %4936
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %452, ptr noundef nonnull align 1 dereferenceable(1) %4937)
          to label %4939 unwind label %4966

4939:                                             ; preds = %4938
  %4940 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %452)
          to label %4941 unwind label %4968

4941:                                             ; preds = %4939
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %452) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %452) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %453) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %454) #6
  invoke void @_ZN5sc_dt6sc_intILi2EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %454, i32 noundef 0)
          to label %4942 unwind label %4971

4942:                                             ; preds = %4941
  %4943 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %454, ptr noundef nonnull align 8 dereferenceable(8) %14)
          to label %4944 unwind label %4973

4944:                                             ; preds = %4942
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %453, ptr noundef nonnull align 1 dereferenceable(1) %4943)
          to label %4945 unwind label %4973

4945:                                             ; preds = %4944
  %4946 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %453)
          to label %4947 unwind label %4975

4947:                                             ; preds = %4945
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %453) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %454) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %454) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %453) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %455) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %456) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %456, i32 noundef 0)
          to label %4948 unwind label %4979

4948:                                             ; preds = %4947
  %4949 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %456, ptr noundef nonnull align 8 dereferenceable(8) %11)
          to label %4950 unwind label %4981

4950:                                             ; preds = %4948
  %4951 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseEb(ptr noundef nonnull align 8 dereferenceable(8) %4949, i1 noundef zeroext %.223.ph)
          to label %4952 unwind label %4981

4952:                                             ; preds = %4950
  invoke void @_ZN5sc_dt6sc_intILi7EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %455, ptr noundef nonnull align 1 dereferenceable(1) %4951)
          to label %4953 unwind label %4981

4953:                                             ; preds = %4952
  %4954 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %455)
          to label %4955 unwind label %4983

4955:                                             ; preds = %4953
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %455) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %456) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %456) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %455) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %457) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %457, i32 noundef -3)
          to label %4956 unwind label %4987

4956:                                             ; preds = %4955
  %4957 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %457)
          to label %4958 unwind label %4989

4958:                                             ; preds = %4956
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %457) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %457) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %458) #6
  store i8 1, ptr %458, align 1, !tbaa !5
  %4959 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %458)
          to label %4960 unwind label %4992

4960:                                             ; preds = %4958
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %458) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1452 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1452:                                   ; preds = %4960, %4965
  %4961 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %4962 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

4962:                                             ; preds = %.preheader1452
  %4963 = load i8, ptr %4961, align 1, !tbaa !5, !range !9, !noundef !10
  %4964 = trunc nuw i8 %4963 to i1
  br i1 %4964, label %4994, label %4965

4965:                                             ; preds = %4962
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1452 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !101

4966:                                             ; preds = %4938, %4936
  %4967 = landingpad { ptr, i32 }
          cleanup
  br label %4970

4968:                                             ; preds = %4939
  %4969 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %452) #6
  br label %4970

4970:                                             ; preds = %4968, %4966
  %.pn1044 = phi { ptr, i32 } [ %4969, %4968 ], [ %4967, %4966 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %452) #6
  br label %.loopexit.split-lp

4971:                                             ; preds = %4941
  %4972 = landingpad { ptr, i32 }
          cleanup
  br label %4978

4973:                                             ; preds = %4944, %4942
  %4974 = landingpad { ptr, i32 }
          cleanup
  br label %4977

4975:                                             ; preds = %4945
  %4976 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %453) #6
  br label %4977

4977:                                             ; preds = %4975, %4973
  %.pn1046 = phi { ptr, i32 } [ %4976, %4975 ], [ %4974, %4973 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %454) #6
  br label %4978

4978:                                             ; preds = %4977, %4971
  %.pn1046.pn = phi { ptr, i32 } [ %.pn1046, %4977 ], [ %4972, %4971 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %454) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %453) #6
  br label %.loopexit.split-lp

4979:                                             ; preds = %4947
  %4980 = landingpad { ptr, i32 }
          cleanup
  br label %4986

4981:                                             ; preds = %4952, %4950, %4948
  %4982 = landingpad { ptr, i32 }
          cleanup
  br label %4985

4983:                                             ; preds = %4953
  %4984 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %455) #6
  br label %4985

4985:                                             ; preds = %4983, %4981
  %.pn1049 = phi { ptr, i32 } [ %4984, %4983 ], [ %4982, %4981 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %456) #6
  br label %4986

4986:                                             ; preds = %4985, %4979
  %.pn1049.pn = phi { ptr, i32 } [ %.pn1049, %4985 ], [ %4980, %4979 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %456) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %455) #6
  br label %.loopexit.split-lp

4987:                                             ; preds = %4955
  %4988 = landingpad { ptr, i32 }
          cleanup
  br label %4991

4989:                                             ; preds = %4956
  %4990 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %457) #6
  br label %4991

4991:                                             ; preds = %4989, %4987
  %.pn1052 = phi { ptr, i32 } [ %4990, %4989 ], [ %4988, %4987 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %457) #6
  br label %.loopexit.split-lp

4992:                                             ; preds = %4958
  %4993 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %458) #6
  br label %.loopexit.split-lp

4994:                                             ; preds = %4962
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4995 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4995:                                             ; preds = %4994
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %459) #6
  store i8 0, ptr %459, align 1, !tbaa !5
  %4996 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %459)
          to label %4997 unwind label %5023

4997:                                             ; preds = %4995
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %459) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %4998 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

4998:                                             ; preds = %4997
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %460) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %461) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %461, i32 noundef 9)
          to label %4999 unwind label %5025

4999:                                             ; preds = %4998
  %5000 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %461, ptr noundef nonnull align 8 dereferenceable(8) %19)
          to label %5001 unwind label %5027

5001:                                             ; preds = %4999
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %460, ptr noundef nonnull align 1 dereferenceable(1) %5000)
          to label %5002 unwind label %5027

5002:                                             ; preds = %5001
  %5003 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %460)
          to label %5004 unwind label %5029

5004:                                             ; preds = %5002
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %460) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %461) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %461) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %460) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %462) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %463) #6
  invoke void @_ZN5sc_dt6sc_intILi2EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %463, i32 noundef 0)
          to label %5005 unwind label %5033

5005:                                             ; preds = %5004
  %5006 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %463, ptr noundef nonnull align 8 dereferenceable(8) %14)
          to label %5007 unwind label %5035

5007:                                             ; preds = %5005
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %462, ptr noundef nonnull align 1 dereferenceable(1) %5006)
          to label %5008 unwind label %5035

5008:                                             ; preds = %5007
  %5009 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %462)
          to label %5010 unwind label %5037

5010:                                             ; preds = %5008
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %462) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %463) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %463) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %462) #6
  %5011 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %23)
          to label %5012 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5012:                                             ; preds = %5010
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %464) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %464, i32 noundef -2)
          to label %5013 unwind label %5041

5013:                                             ; preds = %5012
  %5014 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %464)
          to label %5015 unwind label %5043

5015:                                             ; preds = %5013
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %464) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %464) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %465) #6
  store i8 1, ptr %465, align 1, !tbaa !5
  %5016 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %465)
          to label %5017 unwind label %5046

5017:                                             ; preds = %5015
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %465) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1449 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1449:                                   ; preds = %5017, %5022
  %5018 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %5019 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

5019:                                             ; preds = %.preheader1449
  %5020 = load i8, ptr %5018, align 1, !tbaa !5, !range !9, !noundef !10
  %5021 = trunc nuw i8 %5020 to i1
  br i1 %5021, label %5048, label %5022

5022:                                             ; preds = %5019
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1449 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !102

5023:                                             ; preds = %4995
  %5024 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %459) #6
  br label %.loopexit.split-lp

5025:                                             ; preds = %4998
  %5026 = landingpad { ptr, i32 }
          cleanup
  br label %5032

5027:                                             ; preds = %5001, %4999
  %5028 = landingpad { ptr, i32 }
          cleanup
  br label %5031

5029:                                             ; preds = %5002
  %5030 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %460) #6
  br label %5031

5031:                                             ; preds = %5029, %5027
  %.pn1054 = phi { ptr, i32 } [ %5030, %5029 ], [ %5028, %5027 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %461) #6
  br label %5032

5032:                                             ; preds = %5031, %5025
  %.pn1054.pn = phi { ptr, i32 } [ %.pn1054, %5031 ], [ %5026, %5025 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %461) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %460) #6
  br label %.loopexit.split-lp

5033:                                             ; preds = %5004
  %5034 = landingpad { ptr, i32 }
          cleanup
  br label %5040

5035:                                             ; preds = %5007, %5005
  %5036 = landingpad { ptr, i32 }
          cleanup
  br label %5039

5037:                                             ; preds = %5008
  %5038 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %462) #6
  br label %5039

5039:                                             ; preds = %5037, %5035
  %.pn1057 = phi { ptr, i32 } [ %5038, %5037 ], [ %5036, %5035 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %463) #6
  br label %5040

5040:                                             ; preds = %5039, %5033
  %.pn1057.pn = phi { ptr, i32 } [ %.pn1057, %5039 ], [ %5034, %5033 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %463) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %462) #6
  br label %.loopexit.split-lp

5041:                                             ; preds = %5012
  %5042 = landingpad { ptr, i32 }
          cleanup
  br label %5045

5043:                                             ; preds = %5013
  %5044 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %464) #6
  br label %5045

5045:                                             ; preds = %5043, %5041
  %.pn1060 = phi { ptr, i32 } [ %5044, %5043 ], [ %5042, %5041 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %464) #6
  br label %.loopexit.split-lp

5046:                                             ; preds = %5015
  %5047 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %465) #6
  br label %.loopexit.split-lp

5048:                                             ; preds = %5019
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5049 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5049:                                             ; preds = %5048
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %466) #6
  store i8 0, ptr %466, align 1, !tbaa !5
  %5050 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %466)
          to label %5051 unwind label %5073

5051:                                             ; preds = %5049
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %466) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5052 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5052:                                             ; preds = %5051
  %5053 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %6)
          to label %5054 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5054:                                             ; preds = %5052
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %467) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %468) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %468, i32 noundef 0)
          to label %5055 unwind label %5075

5055:                                             ; preds = %5054
  %5056 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %468)
          to label %5057 unwind label %5077

5057:                                             ; preds = %5055
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %467, ptr noundef nonnull align 1 dereferenceable(1) %5056)
          to label %5058 unwind label %5077

5058:                                             ; preds = %5057
  %5059 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %467)
          to label %5060 unwind label %5079

5060:                                             ; preds = %5058
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %467) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %468) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %468) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %467) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %469) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %469, i32 noundef 1)
          to label %5061 unwind label %5083

5061:                                             ; preds = %5060
  %5062 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %469)
          to label %5063 unwind label %5085

5063:                                             ; preds = %5061
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %469) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %469) #6
  %5064 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5065 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5065:                                             ; preds = %5063
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %470) #6
  store i8 1, ptr %470, align 1, !tbaa !5
  %5066 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %470)
          to label %5067 unwind label %5088

5067:                                             ; preds = %5065
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %470) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1445 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1445:                                   ; preds = %5067, %5072
  %5068 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %5069 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

5069:                                             ; preds = %.preheader1445
  %5070 = load i8, ptr %5068, align 1, !tbaa !5, !range !9, !noundef !10
  %5071 = trunc nuw i8 %5070 to i1
  br i1 %5071, label %5090, label %5072

5072:                                             ; preds = %5069
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1445 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !103

5073:                                             ; preds = %5049
  %5074 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %466) #6
  br label %.loopexit.split-lp

5075:                                             ; preds = %5054
  %5076 = landingpad { ptr, i32 }
          cleanup
  br label %5082

5077:                                             ; preds = %5057, %5055
  %5078 = landingpad { ptr, i32 }
          cleanup
  br label %5081

5079:                                             ; preds = %5058
  %5080 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %467) #6
  br label %5081

5081:                                             ; preds = %5079, %5077
  %.pn1062 = phi { ptr, i32 } [ %5080, %5079 ], [ %5078, %5077 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %468) #6
  br label %5082

5082:                                             ; preds = %5081, %5075
  %.pn1062.pn = phi { ptr, i32 } [ %.pn1062, %5081 ], [ %5076, %5075 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %468) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %467) #6
  br label %.loopexit.split-lp

5083:                                             ; preds = %5060
  %5084 = landingpad { ptr, i32 }
          cleanup
  br label %5087

5085:                                             ; preds = %5061
  %5086 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %469) #6
  br label %5087

5087:                                             ; preds = %5085, %5083
  %.pn1065 = phi { ptr, i32 } [ %5086, %5085 ], [ %5084, %5083 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %469) #6
  br label %.loopexit.split-lp

5088:                                             ; preds = %5065
  %5089 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %470) #6
  br label %.loopexit.split-lp

5090:                                             ; preds = %5069
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5091 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5091:                                             ; preds = %5090
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %471) #6
  store i8 0, ptr %471, align 1, !tbaa !5
  %5092 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %471)
          to label %5093 unwind label %5094

5093:                                             ; preds = %5091
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %471) #6
  br label %.invoke2304

5094:                                             ; preds = %5091
  %5095 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %471) #6
  br label %.loopexit.split-lp

5096:                                             ; preds = %2026
  %5097 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %12)
  %.not841 = icmp eq i64 %5097, 3
  br i1 %.not841, label %5098, label %.invoke2324

5098:                                             ; preds = %5096
  %5099 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %11)
  %5100 = icmp eq i64 %5099, 0
  br i1 %5100, label %.invoke2324, label %5101

5101:                                             ; preds = %5098
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5102 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5102:                                             ; preds = %5101
  %5103 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %27, ptr noundef nonnull align 8 dereferenceable(24) %27)
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %472) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %472, i32 noundef 1)
          to label %5104 unwind label %5127

5104:                                             ; preds = %5102
  %5105 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %472)
          to label %5106 unwind label %5129

5106:                                             ; preds = %5104
  %5107 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %5105)
          to label %5108 unwind label %5129

5108:                                             ; preds = %5106
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %472) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %472) #6
  %5109 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %5110 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5110:                                             ; preds = %5108
  %5111 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5112 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5112:                                             ; preds = %5110
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %473) #6
  store i8 1, ptr %473, align 1, !tbaa !5
  %5113 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %473)
          to label %5114 unwind label %5132

5114:                                             ; preds = %5112
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %473) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %474) #6
  store i8 1, ptr %474, align 1, !tbaa !5
  %5115 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %474)
          to label %5116 unwind label %5134

5116:                                             ; preds = %5114
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %474) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1682 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1682:                                   ; preds = %5116, %5138
  %5117 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %5118 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1684

5118:                                             ; preds = %.preheader1682
  %5119 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %5117)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %475) #6
  store i8 0, ptr %475, align 1, !tbaa !5
  %5120 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %475)
          to label %5121 unwind label %5136

5121:                                             ; preds = %5118
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %475) #6
  %5122 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %5123 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1684

5123:                                             ; preds = %5121
  %5124 = load i8, ptr %5122, align 1, !tbaa !5, !range !9, !noundef !10
  %5125 = trunc nuw i8 %5124 to i1
  br i1 %5125, label %5126, label %5138

5126:                                             ; preds = %5123
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5139 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5127:                                             ; preds = %5102
  %5128 = landingpad { ptr, i32 }
          cleanup
  br label %5131

5129:                                             ; preds = %5106, %5104
  %5130 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %472) #6
  br label %5131

5131:                                             ; preds = %5129, %5127
  %.pn842 = phi { ptr, i32 } [ %5130, %5129 ], [ %5128, %5127 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %472) #6
  br label %.loopexit.split-lp

5132:                                             ; preds = %5112
  %5133 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %473) #6
  br label %.loopexit.split-lp

5134:                                             ; preds = %5114
  %5135 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %474) #6
  br label %.loopexit.split-lp

5136:                                             ; preds = %5118
  %5137 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %475) #6
  br label %.loopexit.split-lp

5138:                                             ; preds = %5123
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1682 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1684, !llvm.loop !104

5139:                                             ; preds = %5126
  %5140 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 11, i32 noundef 0)
          to label %5141 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5141:                                             ; preds = %5139
  %5142 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %22, ptr noundef nonnull align 8 dereferenceable(28) %5140)
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %476) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %476, i32 noundef 10)
          to label %5143 unwind label %5166

5143:                                             ; preds = %5141
  %5144 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %476)
          to label %5145 unwind label %5168

5145:                                             ; preds = %5143
  %5146 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %5144)
          to label %5147 unwind label %5168

5147:                                             ; preds = %5145
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %476) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %476) #6
  %5148 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %5149 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5149:                                             ; preds = %5147
  %5150 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5151 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5151:                                             ; preds = %5149
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %477) #6
  store i8 1, ptr %477, align 1, !tbaa !5
  %5152 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %477)
          to label %5153 unwind label %5171

5153:                                             ; preds = %5151
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %477) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %478) #6
  store i8 1, ptr %478, align 1, !tbaa !5
  %5154 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %478)
          to label %5155 unwind label %5173

5155:                                             ; preds = %5153
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %478) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1675 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1675:                                   ; preds = %5155, %5177
  %5156 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %5157 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1677

5157:                                             ; preds = %.preheader1675
  %5158 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %5156)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %479) #6
  store i8 0, ptr %479, align 1, !tbaa !5
  %5159 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %479)
          to label %5160 unwind label %5175

5160:                                             ; preds = %5157
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %479) #6
  %5161 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %5162 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1677

5162:                                             ; preds = %5160
  %5163 = load i8, ptr %5161, align 1, !tbaa !5, !range !9, !noundef !10
  %5164 = trunc nuw i8 %5163 to i1
  br i1 %5164, label %5165, label %5177

5165:                                             ; preds = %5162
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5178 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5166:                                             ; preds = %5141
  %5167 = landingpad { ptr, i32 }
          cleanup
  br label %5170

5168:                                             ; preds = %5145, %5143
  %5169 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %476) #6
  br label %5170

5170:                                             ; preds = %5168, %5166
  %.pn844 = phi { ptr, i32 } [ %5169, %5168 ], [ %5167, %5166 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %476) #6
  br label %.loopexit.split-lp

5171:                                             ; preds = %5151
  %5172 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %477) #6
  br label %.loopexit.split-lp

5173:                                             ; preds = %5153
  %5174 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %478) #6
  br label %.loopexit.split-lp

5175:                                             ; preds = %5157
  %5176 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %479) #6
  br label %.loopexit.split-lp

5177:                                             ; preds = %5162
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1675 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1677, !llvm.loop !105

5178:                                             ; preds = %5165
  %5179 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1758)
          to label %5180 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5180:                                             ; preds = %5178
  %5181 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %5179, i32 noundef 3)
          to label %5182 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5182:                                             ; preds = %5180
  %5183 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %5181)
          to label %5184 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5184:                                             ; preds = %5182
  %.not846 = icmp eq i64 %5183, 0
  br i1 %.not846, label %5187, label %5185

5185:                                             ; preds = %5184
  %5186 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 4096)
          to label %5189 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5187:                                             ; preds = %5184
  %5188 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %3)
  br label %5189

5189:                                             ; preds = %5185, %5187
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5190 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5190:                                             ; preds = %5189
  %5191 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %31, ptr noundef nonnull align 8 dereferenceable(24) %3)
  %5192 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %31)
  %5193 = trunc i64 %5192 to i32
  switch i32 %5193, label %.invoke2324 [
    i32 4, label %5194
    i32 5, label %5328
    i32 6, label %5401
    i32 7, label %5474
    i32 8, label %5574
    i32 9, label %5629
    i32 -1, label %5687
  ]

5194:                                             ; preds = %5190
  %5195 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %.not923 = icmp eq i64 %5195, 6
  br i1 %.not923, label %5196, label %.invoke2324

5196:                                             ; preds = %5194
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %480) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %480, i32 noundef 24)
          to label %5197 unwind label %5220

5197:                                             ; preds = %5196
  %5198 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %480)
          to label %5199 unwind label %5222

5199:                                             ; preds = %5197
  %5200 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %5198)
          to label %5201 unwind label %5222

5201:                                             ; preds = %5199
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %480) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %480) #6
  %5202 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %5203 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5203:                                             ; preds = %5201
  %5204 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5205 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5205:                                             ; preds = %5203
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %481) #6
  store i8 1, ptr %481, align 1, !tbaa !5
  %5206 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %481)
          to label %5207 unwind label %5225

5207:                                             ; preds = %5205
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %481) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %482) #6
  store i8 1, ptr %482, align 1, !tbaa !5
  %5208 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %482)
          to label %5209 unwind label %5227

5209:                                             ; preds = %5207
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %482) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1593 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1593:                                   ; preds = %5209, %5231
  %5210 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %5211 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1595

5211:                                             ; preds = %.preheader1593
  %5212 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %5210)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %483) #6
  store i8 0, ptr %483, align 1, !tbaa !5
  %5213 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %483)
          to label %5214 unwind label %5229

5214:                                             ; preds = %5211
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %483) #6
  %5215 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %5216 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1595

5216:                                             ; preds = %5214
  %5217 = load i8, ptr %5215, align 1, !tbaa !5, !range !9, !noundef !10
  %5218 = trunc nuw i8 %5217 to i1
  br i1 %5218, label %5219, label %5231

5219:                                             ; preds = %5216
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5232 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5220:                                             ; preds = %5196
  %5221 = landingpad { ptr, i32 }
          cleanup
  br label %5224

5222:                                             ; preds = %5199, %5197
  %5223 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %480) #6
  br label %5224

5224:                                             ; preds = %5222, %5220
  %.pn924 = phi { ptr, i32 } [ %5223, %5222 ], [ %5221, %5220 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %480) #6
  br label %.loopexit.split-lp

5225:                                             ; preds = %5205
  %5226 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %481) #6
  br label %.loopexit.split-lp

5227:                                             ; preds = %5207
  %5228 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %482) #6
  br label %.loopexit.split-lp

5229:                                             ; preds = %5211
  %5230 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %483) #6
  br label %.loopexit.split-lp

5231:                                             ; preds = %5216
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1593 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1595, !llvm.loop !106

5232:                                             ; preds = %5219
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %484) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %484, i32 noundef 1)
          to label %5233 unwind label %5246

5233:                                             ; preds = %5232
  %5234 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 14, i32 noundef 0)
          to label %5235 unwind label %5248

5235:                                             ; preds = %5233
  %5236 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %484, ptr noundef nonnull align 8 dereferenceable(8) %5234)
          to label %5237 unwind label %5248

5237:                                             ; preds = %5235
  %5238 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %2, ptr noundef nonnull align 1 dereferenceable(1) %5236)
          to label %5239 unwind label %5248

5239:                                             ; preds = %5237
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %484) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %484) #6
  %5240 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 0)
          to label %5241 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5241:                                             ; preds = %5239
  %5242 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %5240)
          to label %5243 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5243:                                             ; preds = %5241
  %.not928 = icmp eq i64 %5242, 0
  br i1 %.not928, label %5251, label %5244

5244:                                             ; preds = %5243
  %5245 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 8)
          to label %.invoke2307 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5246:                                             ; preds = %5232
  %5247 = landingpad { ptr, i32 }
          cleanup
  br label %5250

5248:                                             ; preds = %5237, %5235, %5233
  %5249 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %484) #6
  br label %5250

5250:                                             ; preds = %5248, %5246
  %.pn926 = phi { ptr, i32 } [ %5249, %5248 ], [ %5247, %5246 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %484) #6
  br label %.loopexit.split-lp

5251:                                             ; preds = %5243
  %5252 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 16)
          to label %.invoke2307 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.invoke2307:                                      ; preds = %5251, %5244
  %5253 = phi i32 [ 9, %5244 ], [ 17, %5251 ]
  %5254 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %6, i32 noundef %5253)
          to label %5255 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5255:                                             ; preds = %.invoke2307
  %5256 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %5257 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5257:                                             ; preds = %5255
  %5258 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %5259 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5259:                                             ; preds = %5257
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %485) #6
  store i8 0, ptr %485, align 1, !tbaa !5
  %5260 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %485)
          to label %5261 unwind label %5271

5261:                                             ; preds = %5259
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %485) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %486) #6
  store i8 1, ptr %486, align 1, !tbaa !5
  %5262 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %486)
          to label %5263 unwind label %5273

5263:                                             ; preds = %5261
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %486) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1586 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1586:                                   ; preds = %5263, %5277
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %487) #6
  store i8 0, ptr %487, align 1, !tbaa !5
  %5264 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %487)
          to label %5265 unwind label %5275

5265:                                             ; preds = %.preheader1586
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %487) #6
  %5266 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %5267 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1588

5267:                                             ; preds = %5265
  %5268 = load i8, ptr %5266, align 1, !tbaa !5, !range !9, !noundef !10
  %5269 = trunc nuw i8 %5268 to i1
  br i1 %5269, label %5270, label %5277

5270:                                             ; preds = %5267
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5278 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5271:                                             ; preds = %5259
  %5272 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %485) #6
  br label %.loopexit.split-lp

5273:                                             ; preds = %5261
  %5274 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %486) #6
  br label %.loopexit.split-lp

5275:                                             ; preds = %.preheader1586
  %5276 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %487) #6
  br label %.loopexit.split-lp

5277:                                             ; preds = %5267
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1586 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1588, !llvm.loop !107

5278:                                             ; preds = %5270
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %488) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %489) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %489, i32 noundef 25)
          to label %5279 unwind label %5302

5279:                                             ; preds = %5278
  %5280 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %489)
          to label %5281 unwind label %5304

5281:                                             ; preds = %5279
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %488, ptr noundef nonnull align 1 dereferenceable(1) %5280)
          to label %5282 unwind label %5304

5282:                                             ; preds = %5281
  %5283 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %488)
          to label %5284 unwind label %5306

5284:                                             ; preds = %5282
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %488) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %489) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %489) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %488) #6
  %5285 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %6)
          to label %5286 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5286:                                             ; preds = %5284
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %490) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %490, i32 noundef 2)
          to label %5287 unwind label %5310

5287:                                             ; preds = %5286
  %5288 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %490)
          to label %5289 unwind label %5312

5289:                                             ; preds = %5287
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %490) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %490) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %491) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %491, i32 noundef 3)
          to label %5290 unwind label %5315

5290:                                             ; preds = %5289
  %5291 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %491)
          to label %5292 unwind label %5317

5292:                                             ; preds = %5290
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %491) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %491) #6
  %5293 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5294 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5294:                                             ; preds = %5292
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %492) #6
  store i8 1, ptr %492, align 1, !tbaa !5
  %5295 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %492)
          to label %5296 unwind label %5320

5296:                                             ; preds = %5294
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %492) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1578 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1578:                                   ; preds = %5296, %5301
  %5297 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %5298 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1580

5298:                                             ; preds = %.preheader1578
  %5299 = load i8, ptr %5297, align 1, !tbaa !5, !range !9, !noundef !10
  %5300 = trunc nuw i8 %5299 to i1
  br i1 %5300, label %5322, label %5301

5301:                                             ; preds = %5298
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1578 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1580, !llvm.loop !108

5302:                                             ; preds = %5278
  %5303 = landingpad { ptr, i32 }
          cleanup
  br label %5309

5304:                                             ; preds = %5281, %5279
  %5305 = landingpad { ptr, i32 }
          cleanup
  br label %5308

5306:                                             ; preds = %5282
  %5307 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %488) #6
  br label %5308

5308:                                             ; preds = %5306, %5304
  %.pn929 = phi { ptr, i32 } [ %5307, %5306 ], [ %5305, %5304 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %489) #6
  br label %5309

5309:                                             ; preds = %5308, %5302
  %.pn929.pn = phi { ptr, i32 } [ %.pn929, %5308 ], [ %5303, %5302 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %489) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %488) #6
  br label %.loopexit.split-lp

5310:                                             ; preds = %5286
  %5311 = landingpad { ptr, i32 }
          cleanup
  br label %5314

5312:                                             ; preds = %5287
  %5313 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %490) #6
  br label %5314

5314:                                             ; preds = %5312, %5310
  %.pn932 = phi { ptr, i32 } [ %5313, %5312 ], [ %5311, %5310 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %490) #6
  br label %.loopexit.split-lp

5315:                                             ; preds = %5289
  %5316 = landingpad { ptr, i32 }
          cleanup
  br label %5319

5317:                                             ; preds = %5290
  %5318 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %491) #6
  br label %5319

5319:                                             ; preds = %5317, %5315
  %.pn934 = phi { ptr, i32 } [ %5318, %5317 ], [ %5316, %5315 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %491) #6
  br label %.loopexit.split-lp

5320:                                             ; preds = %5294
  %5321 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %492) #6
  br label %.loopexit.split-lp

5322:                                             ; preds = %5298
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5323 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5323:                                             ; preds = %5322
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %493) #6
  store i8 0, ptr %493, align 1, !tbaa !5
  %5324 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %493)
          to label %5325 unwind label %5326

5325:                                             ; preds = %5323
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %493) #6
  br label %.invoke2303

5326:                                             ; preds = %5323
  %5327 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %493) #6
  br label %.loopexit.split-lp

5328:                                             ; preds = %5190
  %5329 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %.not910 = icmp eq i64 %5329, 64
  br i1 %.not910, label %5330, label %.invoke2324

5330:                                             ; preds = %5328
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %494) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %495) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %495, i32 noundef 24)
          to label %5331 unwind label %5348

5331:                                             ; preds = %5330
  %5332 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %495)
          to label %5333 unwind label %5350

5333:                                             ; preds = %5331
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %494, ptr noundef nonnull align 1 dereferenceable(1) %5332)
          to label %5334 unwind label %5350

5334:                                             ; preds = %5333
  %5335 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %494)
          to label %5336 unwind label %5352

5336:                                             ; preds = %5334
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %494) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %495) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %495) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %494) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %496) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %496, i32 noundef 32)
          to label %5337 unwind label %5356

5337:                                             ; preds = %5336
  %5338 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %496)
          to label %5339 unwind label %5358

5339:                                             ; preds = %5337
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %496) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %496) #6
  %5340 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 0)
          to label %5341 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5341:                                             ; preds = %5339
  %5342 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %5340)
          to label %5343 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5343:                                             ; preds = %5341
  %.not916 = icmp eq i64 %5342, 0
  br i1 %.not916, label %5366, label %5344

5344:                                             ; preds = %5343
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %497) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %497, i32 noundef 64)
          to label %5345 unwind label %5361

5345:                                             ; preds = %5344
  %5346 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %497)
          to label %5347 unwind label %5363

5347:                                             ; preds = %5345
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %497) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %497) #6
  br label %5375

5348:                                             ; preds = %5330
  %5349 = landingpad { ptr, i32 }
          cleanup
  br label %5355

5350:                                             ; preds = %5333, %5331
  %5351 = landingpad { ptr, i32 }
          cleanup
  br label %5354

5352:                                             ; preds = %5334
  %5353 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %494) #6
  br label %5354

5354:                                             ; preds = %5352, %5350
  %.pn911 = phi { ptr, i32 } [ %5353, %5352 ], [ %5351, %5350 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %495) #6
  br label %5355

5355:                                             ; preds = %5354, %5348
  %.pn911.pn = phi { ptr, i32 } [ %.pn911, %5354 ], [ %5349, %5348 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %495) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %494) #6
  br label %.loopexit.split-lp

5356:                                             ; preds = %5336
  %5357 = landingpad { ptr, i32 }
          cleanup
  br label %5360

5358:                                             ; preds = %5337
  %5359 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %496) #6
  br label %5360

5360:                                             ; preds = %5358, %5356
  %.pn914 = phi { ptr, i32 } [ %5359, %5358 ], [ %5357, %5356 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %496) #6
  br label %.loopexit.split-lp

5361:                                             ; preds = %5344
  %5362 = landingpad { ptr, i32 }
          cleanup
  br label %5365

5363:                                             ; preds = %5345
  %5364 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %497) #6
  br label %5365

5365:                                             ; preds = %5363, %5361
  %.pn919 = phi { ptr, i32 } [ %5364, %5363 ], [ %5362, %5361 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %497) #6
  br label %.loopexit.split-lp

5366:                                             ; preds = %5343
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %498) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %498, i32 noundef 96)
          to label %5367 unwind label %5370

5367:                                             ; preds = %5366
  %5368 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %498)
          to label %5369 unwind label %5372

5369:                                             ; preds = %5367
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %498) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %498) #6
  br label %5375

5370:                                             ; preds = %5366
  %5371 = landingpad { ptr, i32 }
          cleanup
  br label %5374

5372:                                             ; preds = %5367
  %5373 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %498) #6
  br label %5374

5374:                                             ; preds = %5372, %5370
  %.pn917 = phi { ptr, i32 } [ %5373, %5372 ], [ %5371, %5370 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %498) #6
  br label %.loopexit.split-lp

5375:                                             ; preds = %5369, %5347
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %499) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %499, i32 noundef 3)
          to label %5376 unwind label %5388

5376:                                             ; preds = %5375
  %5377 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %499)
          to label %5378 unwind label %5390

5378:                                             ; preds = %5376
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %499) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %499) #6
  %5379 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5380 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5380:                                             ; preds = %5378
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %500) #6
  store i8 1, ptr %500, align 1, !tbaa !5
  %5381 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %500)
          to label %5382 unwind label %5393

5382:                                             ; preds = %5380
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %500) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1601 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1601:                                   ; preds = %5382, %5387
  %5383 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %5384 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1603

5384:                                             ; preds = %.preheader1601
  %5385 = load i8, ptr %5383, align 1, !tbaa !5, !range !9, !noundef !10
  %5386 = trunc nuw i8 %5385 to i1
  br i1 %5386, label %5395, label %5387

5387:                                             ; preds = %5384
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1601 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1603, !llvm.loop !109

5388:                                             ; preds = %5375
  %5389 = landingpad { ptr, i32 }
          cleanup
  br label %5392

5390:                                             ; preds = %5376
  %5391 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %499) #6
  br label %5392

5392:                                             ; preds = %5390, %5388
  %.pn921 = phi { ptr, i32 } [ %5391, %5390 ], [ %5389, %5388 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %499) #6
  br label %.loopexit.split-lp

5393:                                             ; preds = %5380
  %5394 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %500) #6
  br label %.loopexit.split-lp

5395:                                             ; preds = %5384
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5396 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5396:                                             ; preds = %5395
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %501) #6
  store i8 0, ptr %501, align 1, !tbaa !5
  %5397 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %501)
          to label %5398 unwind label %5399

5398:                                             ; preds = %5396
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %501) #6
  br label %.invoke2303

5399:                                             ; preds = %5396
  %5400 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %501) #6
  br label %.loopexit.split-lp

5401:                                             ; preds = %5190
  %5402 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %.not897 = icmp eq i64 %5402, 64
  br i1 %.not897, label %5403, label %.invoke2324

5403:                                             ; preds = %5401
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %502) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %503) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %503, i32 noundef 24)
          to label %5404 unwind label %5421

5404:                                             ; preds = %5403
  %5405 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %503)
          to label %5406 unwind label %5423

5406:                                             ; preds = %5404
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %502, ptr noundef nonnull align 1 dereferenceable(1) %5405)
          to label %5407 unwind label %5423

5407:                                             ; preds = %5406
  %5408 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %502)
          to label %5409 unwind label %5425

5409:                                             ; preds = %5407
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %502) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %503) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %503) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %502) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %504) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %504, i32 noundef 32)
          to label %5410 unwind label %5429

5410:                                             ; preds = %5409
  %5411 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %504)
          to label %5412 unwind label %5431

5412:                                             ; preds = %5410
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %504) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %504) #6
  %5413 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 0)
          to label %5414 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5414:                                             ; preds = %5412
  %5415 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %5413)
          to label %5416 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5416:                                             ; preds = %5414
  %.not903 = icmp eq i64 %5415, 0
  br i1 %.not903, label %5439, label %5417

5417:                                             ; preds = %5416
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %505) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %505, i32 noundef 128)
          to label %5418 unwind label %5434

5418:                                             ; preds = %5417
  %5419 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %505)
          to label %5420 unwind label %5436

5420:                                             ; preds = %5418
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %505) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %505) #6
  br label %5448

5421:                                             ; preds = %5403
  %5422 = landingpad { ptr, i32 }
          cleanup
  br label %5428

5423:                                             ; preds = %5406, %5404
  %5424 = landingpad { ptr, i32 }
          cleanup
  br label %5427

5425:                                             ; preds = %5407
  %5426 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %502) #6
  br label %5427

5427:                                             ; preds = %5425, %5423
  %.pn898 = phi { ptr, i32 } [ %5426, %5425 ], [ %5424, %5423 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %503) #6
  br label %5428

5428:                                             ; preds = %5427, %5421
  %.pn898.pn = phi { ptr, i32 } [ %.pn898, %5427 ], [ %5422, %5421 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %503) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %502) #6
  br label %.loopexit.split-lp

5429:                                             ; preds = %5409
  %5430 = landingpad { ptr, i32 }
          cleanup
  br label %5433

5431:                                             ; preds = %5410
  %5432 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %504) #6
  br label %5433

5433:                                             ; preds = %5431, %5429
  %.pn901 = phi { ptr, i32 } [ %5432, %5431 ], [ %5430, %5429 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %504) #6
  br label %.loopexit.split-lp

5434:                                             ; preds = %5417
  %5435 = landingpad { ptr, i32 }
          cleanup
  br label %5438

5436:                                             ; preds = %5418
  %5437 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %505) #6
  br label %5438

5438:                                             ; preds = %5436, %5434
  %.pn906 = phi { ptr, i32 } [ %5437, %5436 ], [ %5435, %5434 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %505) #6
  br label %.loopexit.split-lp

5439:                                             ; preds = %5416
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %506) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %506, i32 noundef 160)
          to label %5440 unwind label %5443

5440:                                             ; preds = %5439
  %5441 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %506)
          to label %5442 unwind label %5445

5442:                                             ; preds = %5440
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %506) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %506) #6
  br label %5448

5443:                                             ; preds = %5439
  %5444 = landingpad { ptr, i32 }
          cleanup
  br label %5447

5445:                                             ; preds = %5440
  %5446 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %506) #6
  br label %5447

5447:                                             ; preds = %5445, %5443
  %.pn904 = phi { ptr, i32 } [ %5446, %5445 ], [ %5444, %5443 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %506) #6
  br label %.loopexit.split-lp

5448:                                             ; preds = %5442, %5420
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %507) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %507, i32 noundef 3)
          to label %5449 unwind label %5461

5449:                                             ; preds = %5448
  %5450 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %507)
          to label %5451 unwind label %5463

5451:                                             ; preds = %5449
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %507) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %507) #6
  %5452 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5453 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5453:                                             ; preds = %5451
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %508) #6
  store i8 1, ptr %508, align 1, !tbaa !5
  %5454 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %508)
          to label %5455 unwind label %5466

5455:                                             ; preds = %5453
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %508) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1608 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1608:                                   ; preds = %5455, %5460
  %5456 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %5457 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1610

5457:                                             ; preds = %.preheader1608
  %5458 = load i8, ptr %5456, align 1, !tbaa !5, !range !9, !noundef !10
  %5459 = trunc nuw i8 %5458 to i1
  br i1 %5459, label %5468, label %5460

5460:                                             ; preds = %5457
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1608 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1610, !llvm.loop !110

5461:                                             ; preds = %5448
  %5462 = landingpad { ptr, i32 }
          cleanup
  br label %5465

5463:                                             ; preds = %5449
  %5464 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %507) #6
  br label %5465

5465:                                             ; preds = %5463, %5461
  %.pn908 = phi { ptr, i32 } [ %5464, %5463 ], [ %5462, %5461 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %507) #6
  br label %.loopexit.split-lp

5466:                                             ; preds = %5453
  %5467 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %508) #6
  br label %.loopexit.split-lp

5468:                                             ; preds = %5457
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5469 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5469:                                             ; preds = %5468
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %509) #6
  store i8 0, ptr %509, align 1, !tbaa !5
  %5470 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %509)
          to label %5471 unwind label %5472

5471:                                             ; preds = %5469
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %509) #6
  br label %.invoke2303

5472:                                             ; preds = %5469
  %5473 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %509) #6
  br label %.loopexit.split-lp

5474:                                             ; preds = %5190
  %5475 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1761)
          to label %5476 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5476:                                             ; preds = %5474
  %5477 = load i8, ptr %5475, align 1, !tbaa !5, !range !9, !noundef !10
  %5478 = trunc nuw i8 %5477 to i1
  br i1 %5478, label %5481, label %5479

5479:                                             ; preds = %5476
  %5480 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %.not881 = icmp eq i64 %5480, 12
  br i1 %.not881, label %5481, label %.invoke2324

5481:                                             ; preds = %5479, %5476
  %5482 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1761)
          to label %5483 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5483:                                             ; preds = %5481
  %5484 = load i8, ptr %5482, align 1, !tbaa !5, !range !9, !noundef !10
  %5485 = trunc nuw i8 %5484 to i1
  br i1 %5485, label %5486, label %5488

5486:                                             ; preds = %5483
  %5487 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %.not882 = icmp eq i64 %5487, 8
  br i1 %.not882, label %5488, label %.invoke2324

5488:                                             ; preds = %5486, %5483
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %510) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %511) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %511, i32 noundef 24)
          to label %5489 unwind label %5503

5489:                                             ; preds = %5488
  %5490 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %511)
          to label %5491 unwind label %5505

5491:                                             ; preds = %5489
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %510, ptr noundef nonnull align 1 dereferenceable(1) %5490)
          to label %5492 unwind label %5505

5492:                                             ; preds = %5491
  %5493 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %510)
          to label %5494 unwind label %5507

5494:                                             ; preds = %5492
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %510) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %511) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %511) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %510) #6
  %5495 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1761)
          to label %5496 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5496:                                             ; preds = %5494
  %5497 = load i8, ptr %5495, align 1, !tbaa !5, !range !9, !noundef !10
  %5498 = trunc nuw i8 %5497 to i1
  br i1 %5498, label %5516, label %5499

5499:                                             ; preds = %5496
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %512) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %512, i32 noundef 6)
          to label %5500 unwind label %5511

5500:                                             ; preds = %5499
  %5501 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %512)
          to label %5502 unwind label %5513

5502:                                             ; preds = %5500
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %512) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %512) #6
  br label %5525

5503:                                             ; preds = %5488
  %5504 = landingpad { ptr, i32 }
          cleanup
  br label %5510

5505:                                             ; preds = %5491, %5489
  %5506 = landingpad { ptr, i32 }
          cleanup
  br label %5509

5507:                                             ; preds = %5492
  %5508 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %510) #6
  br label %5509

5509:                                             ; preds = %5507, %5505
  %.pn883 = phi { ptr, i32 } [ %5508, %5507 ], [ %5506, %5505 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %511) #6
  br label %5510

5510:                                             ; preds = %5509, %5503
  %.pn883.pn = phi { ptr, i32 } [ %.pn883, %5509 ], [ %5504, %5503 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %511) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %510) #6
  br label %.loopexit.split-lp

5511:                                             ; preds = %5499
  %5512 = landingpad { ptr, i32 }
          cleanup
  br label %5515

5513:                                             ; preds = %5500
  %5514 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %512) #6
  br label %5515

5515:                                             ; preds = %5513, %5511
  %.pn886 = phi { ptr, i32 } [ %5514, %5513 ], [ %5512, %5511 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %512) #6
  br label %.loopexit.split-lp

5516:                                             ; preds = %5496
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %513) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %513, i32 noundef 4)
          to label %5517 unwind label %5520

5517:                                             ; preds = %5516
  %5518 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %513)
          to label %5519 unwind label %5522

5519:                                             ; preds = %5517
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %513) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %513) #6
  br label %5525

5520:                                             ; preds = %5516
  %5521 = landingpad { ptr, i32 }
          cleanup
  br label %5524

5522:                                             ; preds = %5517
  %5523 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %513) #6
  br label %5524

5524:                                             ; preds = %5522, %5520
  %.pn888 = phi { ptr, i32 } [ %5523, %5522 ], [ %5521, %5520 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %513) #6
  br label %.loopexit.split-lp

5525:                                             ; preds = %5519, %5502
  %5526 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 0)
          to label %5527 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5527:                                             ; preds = %5525
  %5528 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %5526)
          to label %5529 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5529:                                             ; preds = %5527
  %.not890 = icmp eq i64 %5528, 0
  br i1 %.not890, label %5539, label %5530

5530:                                             ; preds = %5529
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %514) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %514, i32 noundef 32)
          to label %5531 unwind label %5534

5531:                                             ; preds = %5530
  %5532 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %514)
          to label %5533 unwind label %5536

5533:                                             ; preds = %5531
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %514) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %514) #6
  br label %5548

5534:                                             ; preds = %5530
  %5535 = landingpad { ptr, i32 }
          cleanup
  br label %5538

5536:                                             ; preds = %5531
  %5537 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %514) #6
  br label %5538

5538:                                             ; preds = %5536, %5534
  %.pn893 = phi { ptr, i32 } [ %5537, %5536 ], [ %5535, %5534 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %514) #6
  br label %.loopexit.split-lp

5539:                                             ; preds = %5529
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %515) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %515, i32 noundef 48)
          to label %5540 unwind label %5543

5540:                                             ; preds = %5539
  %5541 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %515)
          to label %5542 unwind label %5545

5542:                                             ; preds = %5540
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %515) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %515) #6
  br label %5548

5543:                                             ; preds = %5539
  %5544 = landingpad { ptr, i32 }
          cleanup
  br label %5547

5545:                                             ; preds = %5540
  %5546 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %515) #6
  br label %5547

5547:                                             ; preds = %5545, %5543
  %.pn891 = phi { ptr, i32 } [ %5546, %5545 ], [ %5544, %5543 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %515) #6
  br label %.loopexit.split-lp

5548:                                             ; preds = %5542, %5533
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %516) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %516, i32 noundef 3)
          to label %5549 unwind label %5561

5549:                                             ; preds = %5548
  %5550 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %516)
          to label %5551 unwind label %5563

5551:                                             ; preds = %5549
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %516) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %516) #6
  %5552 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5553 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5553:                                             ; preds = %5551
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %517) #6
  store i8 1, ptr %517, align 1, !tbaa !5
  %5554 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %517)
          to label %5555 unwind label %5566

5555:                                             ; preds = %5553
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %517) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1616 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1616:                                   ; preds = %5555, %5560
  %5556 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %5557 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1618

5557:                                             ; preds = %.preheader1616
  %5558 = load i8, ptr %5556, align 1, !tbaa !5, !range !9, !noundef !10
  %5559 = trunc nuw i8 %5558 to i1
  br i1 %5559, label %5568, label %5560

5560:                                             ; preds = %5557
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1616 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1618, !llvm.loop !111

5561:                                             ; preds = %5548
  %5562 = landingpad { ptr, i32 }
          cleanup
  br label %5565

5563:                                             ; preds = %5549
  %5564 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %516) #6
  br label %5565

5565:                                             ; preds = %5563, %5561
  %.pn895 = phi { ptr, i32 } [ %5564, %5563 ], [ %5562, %5561 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %516) #6
  br label %.loopexit.split-lp

5566:                                             ; preds = %5553
  %5567 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %517) #6
  br label %.loopexit.split-lp

5568:                                             ; preds = %5557
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5569 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5569:                                             ; preds = %5568
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %518) #6
  store i8 0, ptr %518, align 1, !tbaa !5
  %5570 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %518)
          to label %5571 unwind label %5572

5571:                                             ; preds = %5569
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %518) #6
  br label %.invoke2303

5572:                                             ; preds = %5569
  %5573 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %518) #6
  br label %.loopexit.split-lp

5574:                                             ; preds = %5190
  %5575 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %.not873 = icmp eq i64 %5575, 2
  br i1 %.not873, label %5576, label %.invoke2324

5576:                                             ; preds = %5574
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %519) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %519, i32 noundef 24)
          to label %5577 unwind label %5586

5577:                                             ; preds = %5576
  %5578 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %519)
          to label %5579 unwind label %5588

5579:                                             ; preds = %5577
  %5580 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %5578)
          to label %5581 unwind label %5588

5581:                                             ; preds = %5579
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %519) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %519) #6
  %5582 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 0)
          to label %5583 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5583:                                             ; preds = %5581
  %5584 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %5582)
          to label %.invoke2306 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.invoke2306:                                      ; preds = %5583
  %.not876 = icmp eq i64 %5584, 0
  %.2322 = select i1 %.not876, i32 4, i32 2
  %5585 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %6, i32 noundef %.2322)
          to label %5591 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5586:                                             ; preds = %5576
  %5587 = landingpad { ptr, i32 }
          cleanup
  br label %5590

5588:                                             ; preds = %5579, %5577
  %5589 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %519) #6
  br label %5590

5590:                                             ; preds = %5588, %5586
  %.pn874 = phi { ptr, i32 } [ %5589, %5588 ], [ %5587, %5586 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %519) #6
  br label %.loopexit.split-lp

5591:                                             ; preds = %.invoke2306
  %5592 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %5593 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5593:                                             ; preds = %5591
  %5594 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %6)
          to label %5595 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5595:                                             ; preds = %5593
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %520) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %520, i32 noundef 1)
          to label %5596 unwind label %5611

5596:                                             ; preds = %5595
  %5597 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %520)
          to label %5598 unwind label %5613

5598:                                             ; preds = %5596
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %520) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %520) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %521) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %521, i32 noundef 3)
          to label %5599 unwind label %5616

5599:                                             ; preds = %5598
  %5600 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %521)
          to label %5601 unwind label %5618

5601:                                             ; preds = %5599
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %521) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %521) #6
  %5602 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5603 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5603:                                             ; preds = %5601
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %522) #6
  store i8 1, ptr %522, align 1, !tbaa !5
  %5604 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %522)
          to label %5605 unwind label %5621

5605:                                             ; preds = %5603
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %522) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1623 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1623:                                   ; preds = %5605, %5610
  %5606 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %5607 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1625

5607:                                             ; preds = %.preheader1623
  %5608 = load i8, ptr %5606, align 1, !tbaa !5, !range !9, !noundef !10
  %5609 = trunc nuw i8 %5608 to i1
  br i1 %5609, label %5623, label %5610

5610:                                             ; preds = %5607
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1623 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1625, !llvm.loop !112

5611:                                             ; preds = %5595
  %5612 = landingpad { ptr, i32 }
          cleanup
  br label %5615

5613:                                             ; preds = %5596
  %5614 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %520) #6
  br label %5615

5615:                                             ; preds = %5613, %5611
  %.pn877 = phi { ptr, i32 } [ %5614, %5613 ], [ %5612, %5611 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %520) #6
  br label %.loopexit.split-lp

5616:                                             ; preds = %5598
  %5617 = landingpad { ptr, i32 }
          cleanup
  br label %5620

5618:                                             ; preds = %5599
  %5619 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %521) #6
  br label %5620

5620:                                             ; preds = %5618, %5616
  %.pn879 = phi { ptr, i32 } [ %5619, %5618 ], [ %5617, %5616 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %521) #6
  br label %.loopexit.split-lp

5621:                                             ; preds = %5603
  %5622 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %522) #6
  br label %.loopexit.split-lp

5623:                                             ; preds = %5607
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5624 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5624:                                             ; preds = %5623
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %523) #6
  store i8 0, ptr %523, align 1, !tbaa !5
  %5625 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %523)
          to label %5626 unwind label %5627

5626:                                             ; preds = %5624
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %523) #6
  br label %.invoke2303

5627:                                             ; preds = %5624
  %5628 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %523) #6
  br label %.loopexit.split-lp

5629:                                             ; preds = %5190
  %5630 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %.not863 = icmp eq i64 %5630, 8
  br i1 %.not863, label %5631, label %.invoke2324

5631:                                             ; preds = %5629
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %524) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %525) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %525, i32 noundef 24)
          to label %5632 unwind label %5656

5632:                                             ; preds = %5631
  %5633 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %525)
          to label %5634 unwind label %5658

5634:                                             ; preds = %5632
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %524, ptr noundef nonnull align 1 dereferenceable(1) %5633)
          to label %5635 unwind label %5658

5635:                                             ; preds = %5634
  %5636 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %524)
          to label %5637 unwind label %5660

5637:                                             ; preds = %5635
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %524) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %525) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %525) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %524) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %526) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %526, i32 noundef 20)
          to label %5638 unwind label %5664

5638:                                             ; preds = %5637
  %5639 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %526)
          to label %5640 unwind label %5666

5640:                                             ; preds = %5638
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %526) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %526) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %527) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %527, i32 noundef 4)
          to label %5641 unwind label %5669

5641:                                             ; preds = %5640
  %5642 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %527)
          to label %5643 unwind label %5671

5643:                                             ; preds = %5641
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %527) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %527) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %528) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %528, i32 noundef 3)
          to label %5644 unwind label %5674

5644:                                             ; preds = %5643
  %5645 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %528)
          to label %5646 unwind label %5676

5646:                                             ; preds = %5644
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %528) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %528) #6
  %5647 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5648 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5648:                                             ; preds = %5646
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %529) #6
  store i8 1, ptr %529, align 1, !tbaa !5
  %5649 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %529)
          to label %5650 unwind label %5679

5650:                                             ; preds = %5648
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %529) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1631 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1631:                                   ; preds = %5650, %5655
  %5651 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %5652 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1633

5652:                                             ; preds = %.preheader1631
  %5653 = load i8, ptr %5651, align 1, !tbaa !5, !range !9, !noundef !10
  %5654 = trunc nuw i8 %5653 to i1
  br i1 %5654, label %5681, label %5655

5655:                                             ; preds = %5652
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1631 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1633, !llvm.loop !113

5656:                                             ; preds = %5631
  %5657 = landingpad { ptr, i32 }
          cleanup
  br label %5663

5658:                                             ; preds = %5634, %5632
  %5659 = landingpad { ptr, i32 }
          cleanup
  br label %5662

5660:                                             ; preds = %5635
  %5661 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %524) #6
  br label %5662

5662:                                             ; preds = %5660, %5658
  %.pn864 = phi { ptr, i32 } [ %5661, %5660 ], [ %5659, %5658 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %525) #6
  br label %5663

5663:                                             ; preds = %5662, %5656
  %.pn864.pn = phi { ptr, i32 } [ %.pn864, %5662 ], [ %5657, %5656 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %525) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %524) #6
  br label %.loopexit.split-lp

5664:                                             ; preds = %5637
  %5665 = landingpad { ptr, i32 }
          cleanup
  br label %5668

5666:                                             ; preds = %5638
  %5667 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %526) #6
  br label %5668

5668:                                             ; preds = %5666, %5664
  %.pn867 = phi { ptr, i32 } [ %5667, %5666 ], [ %5665, %5664 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %526) #6
  br label %.loopexit.split-lp

5669:                                             ; preds = %5640
  %5670 = landingpad { ptr, i32 }
          cleanup
  br label %5673

5671:                                             ; preds = %5641
  %5672 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %527) #6
  br label %5673

5673:                                             ; preds = %5671, %5669
  %.pn869 = phi { ptr, i32 } [ %5672, %5671 ], [ %5670, %5669 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %527) #6
  br label %.loopexit.split-lp

5674:                                             ; preds = %5643
  %5675 = landingpad { ptr, i32 }
          cleanup
  br label %5678

5676:                                             ; preds = %5644
  %5677 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %528) #6
  br label %5678

5678:                                             ; preds = %5676, %5674
  %.pn871 = phi { ptr, i32 } [ %5677, %5676 ], [ %5675, %5674 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %528) #6
  br label %.loopexit.split-lp

5679:                                             ; preds = %5648
  %5680 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %529) #6
  br label %.loopexit.split-lp

5681:                                             ; preds = %5652
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5682 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5682:                                             ; preds = %5681
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %530) #6
  store i8 0, ptr %530, align 1, !tbaa !5
  %5683 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %530)
          to label %5684 unwind label %5685

5684:                                             ; preds = %5682
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %530) #6
  br label %.invoke2303

5685:                                             ; preds = %5682
  %5686 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %530) #6
  br label %.loopexit.split-lp

5687:                                             ; preds = %5190
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %531) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %531, i32 noundef 11)
          to label %5688 unwind label %5711

5688:                                             ; preds = %5687
  %5689 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %531)
          to label %5690 unwind label %5713

5690:                                             ; preds = %5688
  %5691 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %5689)
          to label %5692 unwind label %5713

5692:                                             ; preds = %5690
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %531) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %531) #6
  %5693 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %5694 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5694:                                             ; preds = %5692
  %5695 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5696 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5696:                                             ; preds = %5694
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %532) #6
  store i8 1, ptr %532, align 1, !tbaa !5
  %5697 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %532)
          to label %5698 unwind label %5716

5698:                                             ; preds = %5696
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %532) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %533) #6
  store i8 1, ptr %533, align 1, !tbaa !5
  %5699 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %533)
          to label %5700 unwind label %5718

5700:                                             ; preds = %5698
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %533) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1667 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1667:                                   ; preds = %5700, %5722
  %5701 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %5702 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1669

5702:                                             ; preds = %.preheader1667
  %5703 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %5701)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %534) #6
  store i8 0, ptr %534, align 1, !tbaa !5
  %5704 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %534)
          to label %5705 unwind label %5720

5705:                                             ; preds = %5702
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %534) #6
  %5706 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %5707 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1669

5707:                                             ; preds = %5705
  %5708 = load i8, ptr %5706, align 1, !tbaa !5, !range !9, !noundef !10
  %5709 = trunc nuw i8 %5708 to i1
  br i1 %5709, label %5710, label %5722

5710:                                             ; preds = %5707
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5723 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5711:                                             ; preds = %5687
  %5712 = landingpad { ptr, i32 }
          cleanup
  br label %5715

5713:                                             ; preds = %5690, %5688
  %5714 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %531) #6
  br label %5715

5715:                                             ; preds = %5713, %5711
  %.pn847 = phi { ptr, i32 } [ %5714, %5713 ], [ %5712, %5711 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %531) #6
  br label %.loopexit.split-lp

5716:                                             ; preds = %5696
  %5717 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %532) #6
  br label %.loopexit.split-lp

5718:                                             ; preds = %5698
  %5719 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %533) #6
  br label %.loopexit.split-lp

5720:                                             ; preds = %5702
  %5721 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %534) #6
  br label %.loopexit.split-lp

5722:                                             ; preds = %5707
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1667 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1669, !llvm.loop !114

5723:                                             ; preds = %5710
  %5724 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 13, i32 noundef 0)
          to label %5725 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5725:                                             ; preds = %5723
  %5726 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %7, ptr noundef nonnull align 8 dereferenceable(28) %5724)
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %535) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %535, i32 noundef 24)
          to label %5727 unwind label %5734

5727:                                             ; preds = %5725
  %5728 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %535)
          to label %5729 unwind label %5736

5729:                                             ; preds = %5727
  %5730 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %6, ptr noundef nonnull align 1 dereferenceable(1) %5728)
          to label %5731 unwind label %5736

5731:                                             ; preds = %5729
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %535) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %535) #6
  %5732 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %5733 = icmp slt i64 %5732, 2
  br i1 %5733, label %._crit_edge, label %.lr.ph

._crit_edge:                                      ; preds = %.backedge, %5731
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5914 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5734:                                             ; preds = %5725
  %5735 = landingpad { ptr, i32 }
          cleanup
  br label %5738

5736:                                             ; preds = %5729, %5727
  %5737 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %535) #6
  br label %5738

5738:                                             ; preds = %5736, %5734
  %.pn849 = phi { ptr, i32 } [ %5737, %5736 ], [ %5735, %5734 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %535) #6
  br label %.loopexit.split-lp

.lr.ph:                                           ; preds = %5731, %.backedge
  %5739 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 8 dereferenceable(24) %6)
  %5740 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %5741 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1662

5741:                                             ; preds = %.lr.ph
  %5742 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5743 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1662

5743:                                             ; preds = %5741
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %536) #6
  store i8 1, ptr %536, align 1, !tbaa !5
  %5744 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %536)
          to label %5745 unwind label %5758

5745:                                             ; preds = %5743
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %536) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %537) #6
  store i8 1, ptr %537, align 1, !tbaa !5
  %5746 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %537)
          to label %5747 unwind label %5760

5747:                                             ; preds = %5745
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %537) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1294 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1662

.preheader1294:                                   ; preds = %5747, %5764
  %5748 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %5749 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

5749:                                             ; preds = %.preheader1294
  %5750 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %5748)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %538) #6
  store i8 0, ptr %538, align 1, !tbaa !5
  %5751 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %538)
          to label %5752 unwind label %5762

5752:                                             ; preds = %5749
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %538) #6
  %5753 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %5754 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

5754:                                             ; preds = %5752
  %5755 = load i8, ptr %5753, align 1, !tbaa !5, !range !9, !noundef !10
  %5756 = trunc nuw i8 %5755 to i1
  br i1 %5756, label %5757, label %5764

5757:                                             ; preds = %5754
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5765 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1662

5758:                                             ; preds = %5743
  %5759 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %536) #6
  br label %.loopexit.split-lp

5760:                                             ; preds = %5745
  %5761 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %537) #6
  br label %.loopexit.split-lp

5762:                                             ; preds = %5749
  %5763 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %538) #6
  br label %.loopexit.split-lp

5764:                                             ; preds = %5754
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1294 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !115

5765:                                             ; preds = %5757
  %5766 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 8 dereferenceable(24) %7)
  %5767 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %2, ptr noundef nonnull align 8 dereferenceable(24) %3)
  %5768 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %5769 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1662

5769:                                             ; preds = %5765
  %5770 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %5771 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1662

5771:                                             ; preds = %5769
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %539) #6
  store i8 0, ptr %539, align 1, !tbaa !5
  %5772 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %539)
          to label %5773 unwind label %5783

5773:                                             ; preds = %5771
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %539) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %540) #6
  store i8 1, ptr %540, align 1, !tbaa !5
  %5774 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %540)
          to label %5775 unwind label %5785

5775:                                             ; preds = %5773
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %540) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1290 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1662

.preheader1290:                                   ; preds = %5775, %5789
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %541) #6
  store i8 0, ptr %541, align 1, !tbaa !5
  %5776 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %541)
          to label %5777 unwind label %5787

5777:                                             ; preds = %.preheader1290
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %541) #6
  %5778 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %5779 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

5779:                                             ; preds = %5777
  %5780 = load i8, ptr %5778, align 1, !tbaa !5, !range !9, !noundef !10
  %5781 = trunc nuw i8 %5780 to i1
  br i1 %5781, label %5782, label %5789

5782:                                             ; preds = %5779
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5790 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1662

5783:                                             ; preds = %5771
  %5784 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %539) #6
  br label %.loopexit.split-lp

5785:                                             ; preds = %5773
  %5786 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %540) #6
  br label %.loopexit.split-lp

5787:                                             ; preds = %.preheader1290
  %5788 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %541) #6
  br label %.loopexit.split-lp

5789:                                             ; preds = %5779
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1290 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !116

5790:                                             ; preds = %5782
  %5791 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %6)
  %5792 = add nsw i64 %5791, 1
  %5793 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %6, i64 noundef %5792)
          to label %5794 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1662

5794:                                             ; preds = %5790
  %5795 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %7)
  %5796 = add nsw i64 %5795, 1
  %5797 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %7, i64 noundef %5796)
          to label %5798 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1662

5798:                                             ; preds = %5794
  %5799 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %5800 = add nsw i64 %5799, -2
  %5801 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEx(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %5800)
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %542) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %542, i32 noundef -1)
          to label %5802 unwind label %5808

5802:                                             ; preds = %5798
  %5803 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %542)
          to label %5804 unwind label %5810

5804:                                             ; preds = %5802
  %5805 = invoke noundef zeroext i1 @_ZN5sc_dtleERKNS_11sc_int_baseERKNS_12sc_concatrefE(ptr noundef nonnull align 8 dereferenceable(24) %6, ptr noundef nonnull align 8 dereferenceable(36) %5803)
          to label %5806 unwind label %5810

5806:                                             ; preds = %5804
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %542) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %542) #6
  br i1 %5805, label %5807, label %5813

5807:                                             ; preds = %5806
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.backedge unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1662

5808:                                             ; preds = %5798
  %5809 = landingpad { ptr, i32 }
          cleanup
  br label %5812

5810:                                             ; preds = %5804, %5802
  %5811 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %542) #6
  br label %5812

5812:                                             ; preds = %5810, %5808
  %.pn851 = phi { ptr, i32 } [ %5811, %5810 ], [ %5809, %5808 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %542) #6
  br label %.loopexit.split-lp

5813:                                             ; preds = %5806
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %543) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %543, i32 noundef 2)
          to label %5814 unwind label %5837

5814:                                             ; preds = %5813
  %5815 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %543)
          to label %5816 unwind label %5839

5816:                                             ; preds = %5814
  %5817 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %5815)
          to label %5818 unwind label %5839

5818:                                             ; preds = %5816
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %543) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %543) #6
  %5819 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %5820 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1662

5820:                                             ; preds = %5818
  %5821 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5822 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1662

5822:                                             ; preds = %5820
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %544) #6
  store i8 1, ptr %544, align 1, !tbaa !5
  %5823 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %544)
          to label %5824 unwind label %5842

5824:                                             ; preds = %5822
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %544) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %545) #6
  store i8 1, ptr %545, align 1, !tbaa !5
  %5825 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %545)
          to label %5826 unwind label %5844

5826:                                             ; preds = %5824
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %545) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1287 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1662

.preheader1287:                                   ; preds = %5826, %5848
  %5827 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %5828 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

5828:                                             ; preds = %.preheader1287
  %5829 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %5827)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %546) #6
  store i8 0, ptr %546, align 1, !tbaa !5
  %5830 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %546)
          to label %5831 unwind label %5846

5831:                                             ; preds = %5828
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %546) #6
  %5832 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %5833 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

5833:                                             ; preds = %5831
  %5834 = load i8, ptr %5832, align 1, !tbaa !5, !range !9, !noundef !10
  %5835 = trunc nuw i8 %5834 to i1
  br i1 %5835, label %5836, label %5848

5836:                                             ; preds = %5833
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5849 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1662

5837:                                             ; preds = %5813
  %5838 = landingpad { ptr, i32 }
          cleanup
  br label %5841

5839:                                             ; preds = %5816, %5814
  %5840 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %543) #6
  br label %5841

5841:                                             ; preds = %5839, %5837
  %.pn853 = phi { ptr, i32 } [ %5840, %5839 ], [ %5838, %5837 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %543) #6
  br label %.loopexit.split-lp

5842:                                             ; preds = %5822
  %5843 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %544) #6
  br label %.loopexit.split-lp

5844:                                             ; preds = %5824
  %5845 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %545) #6
  br label %.loopexit.split-lp

5846:                                             ; preds = %5828
  %5847 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %546) #6
  br label %.loopexit.split-lp

5848:                                             ; preds = %5833
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1287 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !117

5849:                                             ; preds = %5836
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %547) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %547, i32 noundef 0)
          to label %5850 unwind label %5874

5850:                                             ; preds = %5849
  %5851 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %547, ptr noundef nonnull align 8 dereferenceable(8) %23)
          to label %5852 unwind label %5876

5852:                                             ; preds = %5850
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %548) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %548, i32 noundef 0)
          to label %5853 unwind label %5878

5853:                                             ; preds = %5852
  %5854 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %5851, ptr noundef nonnull align 8 dereferenceable(8) %548)
          to label %5855 unwind label %5880

5855:                                             ; preds = %5853
  %5856 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %2, ptr noundef nonnull align 1 dereferenceable(1) %5854)
          to label %5857 unwind label %5880

5857:                                             ; preds = %5855
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %548) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %548) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %547) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %547) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %549) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %549, i32 noundef -8192)
          to label %5858 unwind label %5885

5858:                                             ; preds = %5857
  %5859 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %549)
          to label %5860 unwind label %5887

5860:                                             ; preds = %5858
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %549) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %549) #6
  %5861 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %5862 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1662

5862:                                             ; preds = %5860
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %550) #6
  store i8 0, ptr %550, align 1, !tbaa !5
  %5863 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %550)
          to label %5864 unwind label %5890

5864:                                             ; preds = %5862
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %550) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %551) #6
  store i8 1, ptr %551, align 1, !tbaa !5
  %5865 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %551)
          to label %5866 unwind label %5892

5866:                                             ; preds = %5864
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %551) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1283 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1662

.preheader1283:                                   ; preds = %5866, %5896
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %552) #6
  store i8 0, ptr %552, align 1, !tbaa !5
  %5867 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %552)
          to label %5868 unwind label %5894

5868:                                             ; preds = %.preheader1283
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %552) #6
  %5869 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %5870 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

5870:                                             ; preds = %5868
  %5871 = load i8, ptr %5869, align 1, !tbaa !5, !range !9, !noundef !10
  %5872 = trunc nuw i8 %5871 to i1
  br i1 %5872, label %5873, label %5896

5873:                                             ; preds = %5870
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5897 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1662

5874:                                             ; preds = %5849
  %5875 = landingpad { ptr, i32 }
          cleanup
  br label %5884

5876:                                             ; preds = %5850
  %5877 = landingpad { ptr, i32 }
          cleanup
  br label %5883

5878:                                             ; preds = %5852
  %5879 = landingpad { ptr, i32 }
          cleanup
  br label %5882

5880:                                             ; preds = %5855, %5853
  %5881 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %548) #6
  br label %5882

5882:                                             ; preds = %5880, %5878
  %.pn855 = phi { ptr, i32 } [ %5881, %5880 ], [ %5879, %5878 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %548) #6
  br label %5883

5883:                                             ; preds = %5882, %5876
  %.pn855.pn = phi { ptr, i32 } [ %.pn855, %5882 ], [ %5877, %5876 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %547) #6
  br label %5884

5884:                                             ; preds = %5883, %5874
  %.pn855.pn.pn = phi { ptr, i32 } [ %.pn855.pn, %5883 ], [ %5875, %5874 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %547) #6
  br label %.loopexit.split-lp

5885:                                             ; preds = %5857
  %5886 = landingpad { ptr, i32 }
          cleanup
  br label %5889

5887:                                             ; preds = %5858
  %5888 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %549) #6
  br label %5889

5889:                                             ; preds = %5887, %5885
  %.pn859 = phi { ptr, i32 } [ %5888, %5887 ], [ %5886, %5885 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %549) #6
  br label %.loopexit.split-lp

5890:                                             ; preds = %5862
  %5891 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %550) #6
  br label %.loopexit.split-lp

5892:                                             ; preds = %5864
  %5893 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %551) #6
  br label %.loopexit.split-lp

5894:                                             ; preds = %.preheader1283
  %5895 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %552) #6
  br label %.loopexit.split-lp

5896:                                             ; preds = %5870
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1283 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !118

5897:                                             ; preds = %5873
  %5898 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 13, i32 noundef 7)
          to label %5899 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1662

5899:                                             ; preds = %5897
  %5900 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %23, ptr noundef nonnull align 8 dereferenceable(28) %5898)
          to label %5901 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1662

5901:                                             ; preds = %5899
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %553) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %553, i32 noundef 8)
          to label %5902 unwind label %5909

5902:                                             ; preds = %5901
  %5903 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %553)
          to label %5904 unwind label %5911

5904:                                             ; preds = %5902
  %5905 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %6, ptr noundef nonnull align 1 dereferenceable(1) %5903)
          to label %5906 unwind label %5911

5906:                                             ; preds = %5904
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %553) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %553) #6
  br label %.backedge

.backedge:                                        ; preds = %5906, %5807
  %5907 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %22)
  %5908 = icmp slt i64 %5907, 2
  br i1 %5908, label %._crit_edge, label %.lr.ph, !llvm.loop !119

5909:                                             ; preds = %5901
  %5910 = landingpad { ptr, i32 }
          cleanup
  br label %5913

5911:                                             ; preds = %5904, %5902
  %5912 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %553) #6
  br label %5913

5913:                                             ; preds = %5911, %5909
  %.pn861 = phi { ptr, i32 } [ %5912, %5911 ], [ %5910, %5909 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %553) #6
  br label %.loopexit.split-lp

5914:                                             ; preds = %._crit_edge
  %5915 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %22, i32 noundef 0)
          to label %5916 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5916:                                             ; preds = %5914
  %5917 = call noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24) %5915)
  br i1 %5917, label %.invoke2303, label %5918

5918:                                             ; preds = %5916
  %5919 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 8 dereferenceable(24) %6)
  %5920 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %5921 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5921:                                             ; preds = %5918
  %5922 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5923 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5923:                                             ; preds = %5921
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %554) #6
  store i8 1, ptr %554, align 1, !tbaa !5
  %5924 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %554)
          to label %5925 unwind label %5938

5925:                                             ; preds = %5923
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %554) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %555) #6
  store i8 1, ptr %555, align 1, !tbaa !5
  %5926 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %555)
          to label %5927 unwind label %5940

5927:                                             ; preds = %5925
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %555) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1653 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1653:                                   ; preds = %5927, %5944
  %5928 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %5929 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1655

5929:                                             ; preds = %.preheader1653
  %5930 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %5928)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %556) #6
  store i8 0, ptr %556, align 1, !tbaa !5
  %5931 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %556)
          to label %5932 unwind label %5942

5932:                                             ; preds = %5929
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %556) #6
  %5933 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %5934 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1655

5934:                                             ; preds = %5932
  %5935 = load i8, ptr %5933, align 1, !tbaa !5, !range !9, !noundef !10
  %5936 = trunc nuw i8 %5935 to i1
  br i1 %5936, label %5937, label %5944

5937:                                             ; preds = %5934
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5945 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5938:                                             ; preds = %5923
  %5939 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %554) #6
  br label %.loopexit.split-lp

5940:                                             ; preds = %5925
  %5941 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %555) #6
  br label %.loopexit.split-lp

5942:                                             ; preds = %5929
  %5943 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %556) #6
  br label %.loopexit.split-lp

5944:                                             ; preds = %5934
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1653 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1655, !llvm.loop !120

5945:                                             ; preds = %5937
  %5946 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 7, i32 noundef 0)
          to label %5947 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5947:                                             ; preds = %5945
  %5948 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 7, i32 noundef 0)
          to label %5949 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5949:                                             ; preds = %5947
  %5950 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt13sc_int_subrefaSERKS0_(ptr noundef nonnull align 8 dereferenceable(28) %5948, ptr noundef nonnull align 8 dereferenceable(28) %5946)
          to label %5951 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5951:                                             ; preds = %5949
  %5952 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 8 dereferenceable(24) %7)
  %5953 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %5954 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5954:                                             ; preds = %5951
  %5955 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %5956 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5956:                                             ; preds = %5954
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %557) #6
  store i8 1, ptr %557, align 1, !tbaa !5
  %5957 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %557)
          to label %5958 unwind label %5971

5958:                                             ; preds = %5956
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %557) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %558) #6
  store i8 1, ptr %558, align 1, !tbaa !5
  %5959 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %558)
          to label %5960 unwind label %5973

5960:                                             ; preds = %5958
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %558) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1646 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1646:                                   ; preds = %5960, %5977
  %5961 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %5962 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1648

5962:                                             ; preds = %.preheader1646
  %5963 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %5961)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %559) #6
  store i8 0, ptr %559, align 1, !tbaa !5
  %5964 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %559)
          to label %5965 unwind label %5975

5965:                                             ; preds = %5962
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %559) #6
  %5966 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %5967 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1648

5967:                                             ; preds = %5965
  %5968 = load i8, ptr %5966, align 1, !tbaa !5, !range !9, !noundef !10
  %5969 = trunc nuw i8 %5968 to i1
  br i1 %5969, label %5970, label %5977

5970:                                             ; preds = %5967
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %5978 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5971:                                             ; preds = %5956
  %5972 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %557) #6
  br label %.loopexit.split-lp

5973:                                             ; preds = %5958
  %5974 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %558) #6
  br label %.loopexit.split-lp

5975:                                             ; preds = %5962
  %5976 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %559) #6
  br label %.loopexit.split-lp

5977:                                             ; preds = %5967
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1646 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1648, !llvm.loop !121

5978:                                             ; preds = %5970
  %5979 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 15, i32 noundef 8)
          to label %5980 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5980:                                             ; preds = %5978
  %5981 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 7, i32 noundef 0)
          to label %5982 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5982:                                             ; preds = %5980
  %5983 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %5979, ptr noundef nonnull align 8 dereferenceable(8) %5981)
          to label %5984 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5984:                                             ; preds = %5982
  %5985 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %2, ptr noundef nonnull align 1 dereferenceable(1) %5983)
          to label %5986 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5986:                                             ; preds = %5984
  %5987 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %5988 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5988:                                             ; preds = %5986
  %5989 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %5990 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

5990:                                             ; preds = %5988
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %560) #6
  store i8 0, ptr %560, align 1, !tbaa !5
  %5991 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %560)
          to label %5992 unwind label %6001

5992:                                             ; preds = %5990
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %560) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %561) #6
  store i8 1, ptr %561, align 1, !tbaa !5
  %5993 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %561)
          to label %5994 unwind label %6003

5994:                                             ; preds = %5992
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %561) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1638 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1638:                                   ; preds = %5994, %6007
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %562) #6
  store i8 0, ptr %562, align 1, !tbaa !5
  %5995 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %562)
          to label %5996 unwind label %6005

5996:                                             ; preds = %.preheader1638
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %562) #6
  %5997 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %5998 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1640

5998:                                             ; preds = %5996
  %5999 = load i8, ptr %5997, align 1, !tbaa !5, !range !9, !noundef !10
  %6000 = trunc nuw i8 %5999 to i1
  br i1 %6000, label %.invoke2303, label %6007

6001:                                             ; preds = %5990
  %6002 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %560) #6
  br label %.loopexit.split-lp

6003:                                             ; preds = %5992
  %6004 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %561) #6
  br label %.loopexit.split-lp

6005:                                             ; preds = %.preheader1638
  %6006 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %562) #6
  br label %.loopexit.split-lp

6007:                                             ; preds = %5998
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1638 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1640, !llvm.loop !122

6008:                                             ; preds = %2026
  %6009 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %12)
  %.not676 = icmp eq i64 %6009, 3
  br i1 %.not676, label %6010, label %.invoke2324

6010:                                             ; preds = %6008
  %6011 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %11)
  %.not677 = icmp eq i64 %6011, 0
  br i1 %.not677, label %6012, label %.invoke2324

6012:                                             ; preds = %6010
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6013 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6013:                                             ; preds = %6012
  %6014 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %26, i32 noundef 1)
          to label %6015 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6015:                                             ; preds = %6013
  %6016 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1761)
          to label %.invoke2305 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.invoke2305:                                      ; preds = %6015
  %6017 = load i8, ptr %6016, align 1, !tbaa !5, !range !9, !noundef !10
  %6018 = trunc nuw i8 %6017 to i1
  %.2323 = select i1 %6018, i32 152, i32 156
  %6019 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %14, i32 noundef %.2323)
          to label %6020 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6020:                                             ; preds = %.invoke2305
  %6021 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %20, i32 noundef 10)
          to label %6022 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6022:                                             ; preds = %6020
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %563) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %564) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %564, i32 noundef 0)
          to label %6023 unwind label %6048

6023:                                             ; preds = %6022
  %6024 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %564)
          to label %6025 unwind label %6050

6025:                                             ; preds = %6023
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %563, ptr noundef nonnull align 1 dereferenceable(1) %6024)
          to label %6026 unwind label %6050

6026:                                             ; preds = %6025
  %6027 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %563)
          to label %6028 unwind label %6052

6028:                                             ; preds = %6026
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %563) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %564) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %564) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %563) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %565) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %566) #6
  invoke void @_ZN5sc_dt6sc_intILi2EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %566, i32 noundef 0)
          to label %6029 unwind label %6056

6029:                                             ; preds = %6028
  %6030 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %566, ptr noundef nonnull align 8 dereferenceable(8) %14)
          to label %6031 unwind label %6058

6031:                                             ; preds = %6029
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %565, ptr noundef nonnull align 1 dereferenceable(1) %6030)
          to label %6032 unwind label %6058

6032:                                             ; preds = %6031
  %6033 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %565)
          to label %6034 unwind label %6060

6034:                                             ; preds = %6032
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %565) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %566) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %566) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %565) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %567) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %567, i32 noundef 20)
          to label %6035 unwind label %6064

6035:                                             ; preds = %6034
  %6036 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %567)
          to label %6037 unwind label %6066

6037:                                             ; preds = %6035
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %567) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %567) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %568) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %568, i32 noundef -3)
          to label %6038 unwind label %6069

6038:                                             ; preds = %6037
  %6039 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %568)
          to label %6040 unwind label %6071

6040:                                             ; preds = %6038
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %568) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %568) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %569) #6
  store i8 1, ptr %569, align 1, !tbaa !5
  %6041 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %569)
          to label %6042 unwind label %6074

6042:                                             ; preds = %6040
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %569) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1840 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1840:                                   ; preds = %6042, %6047
  %6043 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %6044 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1842

6044:                                             ; preds = %.preheader1840
  %6045 = load i8, ptr %6043, align 1, !tbaa !5, !range !9, !noundef !10
  %6046 = trunc nuw i8 %6045 to i1
  br i1 %6046, label %6076, label %6047

6047:                                             ; preds = %6044
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1840 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1842, !llvm.loop !123

6048:                                             ; preds = %6022
  %6049 = landingpad { ptr, i32 }
          cleanup
  br label %6055

6050:                                             ; preds = %6025, %6023
  %6051 = landingpad { ptr, i32 }
          cleanup
  br label %6054

6052:                                             ; preds = %6026
  %6053 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %563) #6
  br label %6054

6054:                                             ; preds = %6052, %6050
  %.pn678 = phi { ptr, i32 } [ %6053, %6052 ], [ %6051, %6050 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %564) #6
  br label %6055

6055:                                             ; preds = %6054, %6048
  %.pn678.pn = phi { ptr, i32 } [ %.pn678, %6054 ], [ %6049, %6048 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %564) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %563) #6
  br label %.loopexit.split-lp

6056:                                             ; preds = %6028
  %6057 = landingpad { ptr, i32 }
          cleanup
  br label %6063

6058:                                             ; preds = %6031, %6029
  %6059 = landingpad { ptr, i32 }
          cleanup
  br label %6062

6060:                                             ; preds = %6032
  %6061 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %565) #6
  br label %6062

6062:                                             ; preds = %6060, %6058
  %.pn681 = phi { ptr, i32 } [ %6061, %6060 ], [ %6059, %6058 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %566) #6
  br label %6063

6063:                                             ; preds = %6062, %6056
  %.pn681.pn = phi { ptr, i32 } [ %.pn681, %6062 ], [ %6057, %6056 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %566) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %565) #6
  br label %.loopexit.split-lp

6064:                                             ; preds = %6034
  %6065 = landingpad { ptr, i32 }
          cleanup
  br label %6068

6066:                                             ; preds = %6035
  %6067 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %567) #6
  br label %6068

6068:                                             ; preds = %6066, %6064
  %.pn684 = phi { ptr, i32 } [ %6067, %6066 ], [ %6065, %6064 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %567) #6
  br label %.loopexit.split-lp

6069:                                             ; preds = %6037
  %6070 = landingpad { ptr, i32 }
          cleanup
  br label %6073

6071:                                             ; preds = %6038
  %6072 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %568) #6
  br label %6073

6073:                                             ; preds = %6071, %6069
  %.pn686 = phi { ptr, i32 } [ %6072, %6071 ], [ %6070, %6069 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %568) #6
  br label %.loopexit.split-lp

6074:                                             ; preds = %6040
  %6075 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %569) #6
  br label %.loopexit.split-lp

6076:                                             ; preds = %6044
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6077 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6077:                                             ; preds = %6076
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %570) #6
  store i8 0, ptr %570, align 1, !tbaa !5
  %6078 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %570)
          to label %6079 unwind label %6105

6079:                                             ; preds = %6077
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %570) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6080 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6080:                                             ; preds = %6079
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %571) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %572) #6
  invoke void @_ZN5sc_dt6sc_intILi6EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %572, i32 noundef 1)
          to label %6081 unwind label %6107

6081:                                             ; preds = %6080
  %6082 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %20, ptr noundef nonnull align 8 dereferenceable(8) %572)
          to label %6083 unwind label %6109

6083:                                             ; preds = %6081
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %571, ptr noundef nonnull align 1 dereferenceable(1) %6082)
          to label %6084 unwind label %6109

6084:                                             ; preds = %6083
  %6085 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %571)
          to label %6086 unwind label %6111

6086:                                             ; preds = %6084
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %571) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %572) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %572) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %571) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %573) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %574) #6
  invoke void @_ZN5sc_dt6sc_intILi2EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %574, i32 noundef 0)
          to label %6087 unwind label %6115

6087:                                             ; preds = %6086
  %6088 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %574, ptr noundef nonnull align 8 dereferenceable(8) %14)
          to label %6089 unwind label %6117

6089:                                             ; preds = %6087
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %573, ptr noundef nonnull align 1 dereferenceable(1) %6088)
          to label %6090 unwind label %6117

6090:                                             ; preds = %6089
  %6091 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %573)
          to label %6092 unwind label %6119

6092:                                             ; preds = %6090
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %573) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %574) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %574) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %573) #6
  %6093 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %23)
          to label %6094 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6094:                                             ; preds = %6092
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %575) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %575, i32 noundef -2)
          to label %6095 unwind label %6123

6095:                                             ; preds = %6094
  %6096 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %575)
          to label %6097 unwind label %6125

6097:                                             ; preds = %6095
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %575) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %575) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %576) #6
  store i8 1, ptr %576, align 1, !tbaa !5
  %6098 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %576)
          to label %6099 unwind label %6128

6099:                                             ; preds = %6097
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %576) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1832 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1832:                                   ; preds = %6099, %6104
  %6100 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %6101 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1834

6101:                                             ; preds = %.preheader1832
  %6102 = load i8, ptr %6100, align 1, !tbaa !5, !range !9, !noundef !10
  %6103 = trunc nuw i8 %6102 to i1
  br i1 %6103, label %6130, label %6104

6104:                                             ; preds = %6101
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1832 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1834, !llvm.loop !124

6105:                                             ; preds = %6077
  %6106 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %570) #6
  br label %.loopexit.split-lp

6107:                                             ; preds = %6080
  %6108 = landingpad { ptr, i32 }
          cleanup
  br label %6114

6109:                                             ; preds = %6083, %6081
  %6110 = landingpad { ptr, i32 }
          cleanup
  br label %6113

6111:                                             ; preds = %6084
  %6112 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %571) #6
  br label %6113

6113:                                             ; preds = %6111, %6109
  %.pn688 = phi { ptr, i32 } [ %6112, %6111 ], [ %6110, %6109 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %572) #6
  br label %6114

6114:                                             ; preds = %6113, %6107
  %.pn688.pn = phi { ptr, i32 } [ %.pn688, %6113 ], [ %6108, %6107 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %572) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %571) #6
  br label %.loopexit.split-lp

6115:                                             ; preds = %6086
  %6116 = landingpad { ptr, i32 }
          cleanup
  br label %6122

6117:                                             ; preds = %6089, %6087
  %6118 = landingpad { ptr, i32 }
          cleanup
  br label %6121

6119:                                             ; preds = %6090
  %6120 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %573) #6
  br label %6121

6121:                                             ; preds = %6119, %6117
  %.pn691 = phi { ptr, i32 } [ %6120, %6119 ], [ %6118, %6117 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %574) #6
  br label %6122

6122:                                             ; preds = %6121, %6115
  %.pn691.pn = phi { ptr, i32 } [ %.pn691, %6121 ], [ %6116, %6115 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %574) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %573) #6
  br label %.loopexit.split-lp

6123:                                             ; preds = %6094
  %6124 = landingpad { ptr, i32 }
          cleanup
  br label %6127

6125:                                             ; preds = %6095
  %6126 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %575) #6
  br label %6127

6127:                                             ; preds = %6125, %6123
  %.pn694 = phi { ptr, i32 } [ %6126, %6125 ], [ %6124, %6123 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %575) #6
  br label %.loopexit.split-lp

6128:                                             ; preds = %6097
  %6129 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %576) #6
  br label %.loopexit.split-lp

6130:                                             ; preds = %6101
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6131 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6131:                                             ; preds = %6130
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %577) #6
  store i8 0, ptr %577, align 1, !tbaa !5
  %6132 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %577)
          to label %6133 unwind label %6157

6133:                                             ; preds = %6131
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %577) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6134 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6134:                                             ; preds = %6133
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %578) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %578, i32 noundef 10)
          to label %6135 unwind label %6159

6135:                                             ; preds = %6134
  %6136 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %578)
          to label %6137 unwind label %6161

6137:                                             ; preds = %6135
  %6138 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %6136)
          to label %6139 unwind label %6161

6139:                                             ; preds = %6137
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %578) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %578) #6
  %6140 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef 0)
          to label %6141 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6141:                                             ; preds = %6139
  %6142 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %6143 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6143:                                             ; preds = %6141
  %6144 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %6145 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6145:                                             ; preds = %6143
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %579) #6
  store i8 0, ptr %579, align 1, !tbaa !5
  %6146 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %579)
          to label %6147 unwind label %6164

6147:                                             ; preds = %6145
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %579) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %580) #6
  store i8 1, ptr %580, align 1, !tbaa !5
  %6148 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %580)
          to label %6149 unwind label %6166

6149:                                             ; preds = %6147
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %580) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1825 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1825:                                   ; preds = %6149, %6170
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %581) #6
  store i8 0, ptr %581, align 1, !tbaa !5
  %6150 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %581)
          to label %6151 unwind label %6168

6151:                                             ; preds = %.preheader1825
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %581) #6
  %6152 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %6153 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1827

6153:                                             ; preds = %6151
  %6154 = load i8, ptr %6152, align 1, !tbaa !5, !range !9, !noundef !10
  %6155 = trunc nuw i8 %6154 to i1
  br i1 %6155, label %6156, label %6170

6156:                                             ; preds = %6153
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6171 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6157:                                             ; preds = %6131
  %6158 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %577) #6
  br label %.loopexit.split-lp

6159:                                             ; preds = %6134
  %6160 = landingpad { ptr, i32 }
          cleanup
  br label %6163

6161:                                             ; preds = %6137, %6135
  %6162 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %578) #6
  br label %6163

6163:                                             ; preds = %6161, %6159
  %.pn696 = phi { ptr, i32 } [ %6162, %6161 ], [ %6160, %6159 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %578) #6
  br label %.loopexit.split-lp

6164:                                             ; preds = %6145
  %6165 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %579) #6
  br label %.loopexit.split-lp

6166:                                             ; preds = %6147
  %6167 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %580) #6
  br label %.loopexit.split-lp

6168:                                             ; preds = %.preheader1825
  %6169 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %581) #6
  br label %.loopexit.split-lp

6170:                                             ; preds = %6153
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1825 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1827, !llvm.loop !125

6171:                                             ; preds = %6156
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %582) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %582, i32 noundef 8)
          to label %6172 unwind label %6196

6172:                                             ; preds = %6171
  %6173 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %582)
          to label %6174 unwind label %6198

6174:                                             ; preds = %6172
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %582) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %582) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %583) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %584) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %584, i32 noundef 24)
          to label %6175 unwind label %6201

6175:                                             ; preds = %6174
  %6176 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %584)
          to label %6177 unwind label %6203

6177:                                             ; preds = %6175
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %583, ptr noundef nonnull align 1 dereferenceable(1) %6176)
          to label %6178 unwind label %6203

6178:                                             ; preds = %6177
  %6179 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %583)
          to label %6180 unwind label %6205

6180:                                             ; preds = %6178
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %583) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %584) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %584) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %583) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %585) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %585, i32 noundef 3)
          to label %6181 unwind label %6209

6181:                                             ; preds = %6180
  %6182 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %585)
          to label %6183 unwind label %6211

6183:                                             ; preds = %6181
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %585) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %585) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %586) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %586, i32 noundef 3)
          to label %6184 unwind label %6214

6184:                                             ; preds = %6183
  %6185 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %586)
          to label %6186 unwind label %6216

6186:                                             ; preds = %6184
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %586) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %586) #6
  %6187 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %6188 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6188:                                             ; preds = %6186
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %587) #6
  store i8 1, ptr %587, align 1, !tbaa !5
  %6189 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %587)
          to label %6190 unwind label %6219

6190:                                             ; preds = %6188
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %587) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1817 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1817:                                   ; preds = %6190, %6195
  %6191 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %6192 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1819

6192:                                             ; preds = %.preheader1817
  %6193 = load i8, ptr %6191, align 1, !tbaa !5, !range !9, !noundef !10
  %6194 = trunc nuw i8 %6193 to i1
  br i1 %6194, label %6221, label %6195

6195:                                             ; preds = %6192
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1817 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1819, !llvm.loop !126

6196:                                             ; preds = %6171
  %6197 = landingpad { ptr, i32 }
          cleanup
  br label %6200

6198:                                             ; preds = %6172
  %6199 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %582) #6
  br label %6200

6200:                                             ; preds = %6198, %6196
  %.pn698 = phi { ptr, i32 } [ %6199, %6198 ], [ %6197, %6196 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %582) #6
  br label %.loopexit.split-lp

6201:                                             ; preds = %6174
  %6202 = landingpad { ptr, i32 }
          cleanup
  br label %6208

6203:                                             ; preds = %6177, %6175
  %6204 = landingpad { ptr, i32 }
          cleanup
  br label %6207

6205:                                             ; preds = %6178
  %6206 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %583) #6
  br label %6207

6207:                                             ; preds = %6205, %6203
  %.pn700 = phi { ptr, i32 } [ %6206, %6205 ], [ %6204, %6203 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %584) #6
  br label %6208

6208:                                             ; preds = %6207, %6201
  %.pn700.pn = phi { ptr, i32 } [ %.pn700, %6207 ], [ %6202, %6201 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %584) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %583) #6
  br label %.loopexit.split-lp

6209:                                             ; preds = %6180
  %6210 = landingpad { ptr, i32 }
          cleanup
  br label %6213

6211:                                             ; preds = %6181
  %6212 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %585) #6
  br label %6213

6213:                                             ; preds = %6211, %6209
  %.pn703 = phi { ptr, i32 } [ %6212, %6211 ], [ %6210, %6209 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %585) #6
  br label %.loopexit.split-lp

6214:                                             ; preds = %6183
  %6215 = landingpad { ptr, i32 }
          cleanup
  br label %6218

6216:                                             ; preds = %6184
  %6217 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %586) #6
  br label %6218

6218:                                             ; preds = %6216, %6214
  %.pn705 = phi { ptr, i32 } [ %6217, %6216 ], [ %6215, %6214 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %586) #6
  br label %.loopexit.split-lp

6219:                                             ; preds = %6188
  %6220 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %587) #6
  br label %.loopexit.split-lp

6221:                                             ; preds = %6192
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6222 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6222:                                             ; preds = %6221
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %588) #6
  store i8 0, ptr %588, align 1, !tbaa !5
  %6223 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %588)
          to label %6224 unwind label %6250

6224:                                             ; preds = %6222
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %588) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6225 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6225:                                             ; preds = %6224
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %589) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %589, i32 noundef 64)
          to label %6226 unwind label %6252

6226:                                             ; preds = %6225
  %6227 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %589)
          to label %6228 unwind label %6254

6228:                                             ; preds = %6226
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %589) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %589) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %590) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %591) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %591, i32 noundef 27)
          to label %6229 unwind label %6257

6229:                                             ; preds = %6228
  %6230 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %591)
          to label %6231 unwind label %6259

6231:                                             ; preds = %6229
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %590, ptr noundef nonnull align 1 dereferenceable(1) %6230)
          to label %6232 unwind label %6259

6232:                                             ; preds = %6231
  %6233 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %590)
          to label %6234 unwind label %6261

6234:                                             ; preds = %6232
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %590) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %591) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %591) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %590) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %592) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %592, i32 noundef 32)
          to label %6235 unwind label %6265

6235:                                             ; preds = %6234
  %6236 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %592)
          to label %6237 unwind label %6267

6237:                                             ; preds = %6235
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %592) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %592) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %593) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %593, i32 noundef 3)
          to label %6238 unwind label %6270

6238:                                             ; preds = %6237
  %6239 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %593)
          to label %6240 unwind label %6272

6240:                                             ; preds = %6238
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %593) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %593) #6
  %6241 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %6242 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6242:                                             ; preds = %6240
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %594) #6
  store i8 1, ptr %594, align 1, !tbaa !5
  %6243 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %594)
          to label %6244 unwind label %6275

6244:                                             ; preds = %6242
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %594) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1810 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1810:                                   ; preds = %6244, %6249
  %6245 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %6246 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1812

6246:                                             ; preds = %.preheader1810
  %6247 = load i8, ptr %6245, align 1, !tbaa !5, !range !9, !noundef !10
  %6248 = trunc nuw i8 %6247 to i1
  br i1 %6248, label %6277, label %6249

6249:                                             ; preds = %6246
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1810 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1812, !llvm.loop !127

6250:                                             ; preds = %6222
  %6251 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %588) #6
  br label %.loopexit.split-lp

6252:                                             ; preds = %6225
  %6253 = landingpad { ptr, i32 }
          cleanup
  br label %6256

6254:                                             ; preds = %6226
  %6255 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %589) #6
  br label %6256

6256:                                             ; preds = %6254, %6252
  %.pn707 = phi { ptr, i32 } [ %6255, %6254 ], [ %6253, %6252 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %589) #6
  br label %.loopexit.split-lp

6257:                                             ; preds = %6228
  %6258 = landingpad { ptr, i32 }
          cleanup
  br label %6264

6259:                                             ; preds = %6231, %6229
  %6260 = landingpad { ptr, i32 }
          cleanup
  br label %6263

6261:                                             ; preds = %6232
  %6262 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %590) #6
  br label %6263

6263:                                             ; preds = %6261, %6259
  %.pn709 = phi { ptr, i32 } [ %6262, %6261 ], [ %6260, %6259 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %591) #6
  br label %6264

6264:                                             ; preds = %6263, %6257
  %.pn709.pn = phi { ptr, i32 } [ %.pn709, %6263 ], [ %6258, %6257 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %591) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %590) #6
  br label %.loopexit.split-lp

6265:                                             ; preds = %6234
  %6266 = landingpad { ptr, i32 }
          cleanup
  br label %6269

6267:                                             ; preds = %6235
  %6268 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %592) #6
  br label %6269

6269:                                             ; preds = %6267, %6265
  %.pn712 = phi { ptr, i32 } [ %6268, %6267 ], [ %6266, %6265 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %592) #6
  br label %.loopexit.split-lp

6270:                                             ; preds = %6237
  %6271 = landingpad { ptr, i32 }
          cleanup
  br label %6274

6272:                                             ; preds = %6238
  %6273 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %593) #6
  br label %6274

6274:                                             ; preds = %6272, %6270
  %.pn714 = phi { ptr, i32 } [ %6273, %6272 ], [ %6271, %6270 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %593) #6
  br label %.loopexit.split-lp

6275:                                             ; preds = %6242
  %6276 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %594) #6
  br label %.loopexit.split-lp

6277:                                             ; preds = %6246
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6278 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6278:                                             ; preds = %6277
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %595) #6
  store i8 0, ptr %595, align 1, !tbaa !5
  %6279 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %595)
          to label %6280 unwind label %6303

6280:                                             ; preds = %6278
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %595) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6281 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6281:                                             ; preds = %6280
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %596) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %596, i32 noundef 128)
          to label %6282 unwind label %6305

6282:                                             ; preds = %6281
  %6283 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %596)
          to label %6284 unwind label %6307

6284:                                             ; preds = %6282
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %596) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %596) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %597) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %598) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %598, i32 noundef 59)
          to label %6285 unwind label %6310

6285:                                             ; preds = %6284
  %6286 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %598)
          to label %6287 unwind label %6312

6287:                                             ; preds = %6285
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %597, ptr noundef nonnull align 1 dereferenceable(1) %6286)
          to label %6288 unwind label %6312

6288:                                             ; preds = %6287
  %6289 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %597)
          to label %6290 unwind label %6314

6290:                                             ; preds = %6288
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %597) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %598) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %598) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %597) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %599) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %599, i32 noundef 3)
          to label %6291 unwind label %6318

6291:                                             ; preds = %6290
  %6292 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %599)
          to label %6293 unwind label %6320

6293:                                             ; preds = %6291
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %599) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %599) #6
  %6294 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %6295 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6295:                                             ; preds = %6293
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %600) #6
  store i8 1, ptr %600, align 1, !tbaa !5
  %6296 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %600)
          to label %6297 unwind label %6323

6297:                                             ; preds = %6295
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %600) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1802 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1802:                                   ; preds = %6297, %6302
  %6298 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %6299 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1804

6299:                                             ; preds = %.preheader1802
  %6300 = load i8, ptr %6298, align 1, !tbaa !5, !range !9, !noundef !10
  %6301 = trunc nuw i8 %6300 to i1
  br i1 %6301, label %6325, label %6302

6302:                                             ; preds = %6299
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1802 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1804, !llvm.loop !128

6303:                                             ; preds = %6278
  %6304 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %595) #6
  br label %.loopexit.split-lp

6305:                                             ; preds = %6281
  %6306 = landingpad { ptr, i32 }
          cleanup
  br label %6309

6307:                                             ; preds = %6282
  %6308 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %596) #6
  br label %6309

6309:                                             ; preds = %6307, %6305
  %.pn716 = phi { ptr, i32 } [ %6308, %6307 ], [ %6306, %6305 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %596) #6
  br label %.loopexit.split-lp

6310:                                             ; preds = %6284
  %6311 = landingpad { ptr, i32 }
          cleanup
  br label %6317

6312:                                             ; preds = %6287, %6285
  %6313 = landingpad { ptr, i32 }
          cleanup
  br label %6316

6314:                                             ; preds = %6288
  %6315 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %597) #6
  br label %6316

6316:                                             ; preds = %6314, %6312
  %.pn718 = phi { ptr, i32 } [ %6315, %6314 ], [ %6313, %6312 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %598) #6
  br label %6317

6317:                                             ; preds = %6316, %6310
  %.pn718.pn = phi { ptr, i32 } [ %.pn718, %6316 ], [ %6311, %6310 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %598) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %597) #6
  br label %.loopexit.split-lp

6318:                                             ; preds = %6290
  %6319 = landingpad { ptr, i32 }
          cleanup
  br label %6322

6320:                                             ; preds = %6291
  %6321 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %599) #6
  br label %6322

6322:                                             ; preds = %6320, %6318
  %.pn721 = phi { ptr, i32 } [ %6321, %6320 ], [ %6319, %6318 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %599) #6
  br label %.loopexit.split-lp

6323:                                             ; preds = %6295
  %6324 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %600) #6
  br label %.loopexit.split-lp

6325:                                             ; preds = %6299
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6326 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6326:                                             ; preds = %6325
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %601) #6
  store i8 0, ptr %601, align 1, !tbaa !5
  %6327 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %601)
          to label %6328 unwind label %6359

6328:                                             ; preds = %6326
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %601) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6329 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6329:                                             ; preds = %6328
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %602) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %602, i32 noundef 32)
          to label %6330 unwind label %6361

6330:                                             ; preds = %6329
  %6331 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %602)
          to label %6332 unwind label %6363

6332:                                             ; preds = %6330
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %602) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %602) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %603) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %604) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %604, i32 noundef -37)
          to label %6333 unwind label %6366

6333:                                             ; preds = %6332
  %6334 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %604)
          to label %6335 unwind label %6368

6335:                                             ; preds = %6333
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %603, ptr noundef nonnull align 1 dereferenceable(1) %6334)
          to label %6336 unwind label %6368

6336:                                             ; preds = %6335
  %6337 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %603)
          to label %6338 unwind label %6370

6338:                                             ; preds = %6336
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %603) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %604) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %604) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %603) #6
  %6339 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1761)
          to label %6340 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6340:                                             ; preds = %6338
  %6341 = load i8, ptr %6339, align 1, !tbaa !5, !range !9, !noundef !10
  %6342 = trunc nuw i8 %6341 to i1
  br i1 %6342, label %6389, label %6343

6343:                                             ; preds = %6340
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %605) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %605, i32 noundef -31)
          to label %6344 unwind label %6374

6344:                                             ; preds = %6343
  %6345 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %605)
          to label %6346 unwind label %6376

6346:                                             ; preds = %6344
  %6347 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %6, ptr noundef nonnull align 1 dereferenceable(1) %6345)
          to label %6348 unwind label %6376

6348:                                             ; preds = %6346
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %605) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %605) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %606) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %606, i32 noundef -30)
          to label %6349 unwind label %6379

6349:                                             ; preds = %6348
  %6350 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %606)
          to label %6351 unwind label %6381

6351:                                             ; preds = %6349
  %6352 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %7, ptr noundef nonnull align 1 dereferenceable(1) %6350)
          to label %6353 unwind label %6381

6353:                                             ; preds = %6351
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %606) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %606) #6
  %6354 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 6)
          to label %6355 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6355:                                             ; preds = %6353
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %607) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %607, i32 noundef 6)
          to label %6356 unwind label %6384

6356:                                             ; preds = %6355
  %6357 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %607)
          to label %6358 unwind label %6386

6358:                                             ; preds = %6356
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %607) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %607) #6
  br label %6420

6359:                                             ; preds = %6326
  %6360 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %601) #6
  br label %.loopexit.split-lp

6361:                                             ; preds = %6329
  %6362 = landingpad { ptr, i32 }
          cleanup
  br label %6365

6363:                                             ; preds = %6330
  %6364 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %602) #6
  br label %6365

6365:                                             ; preds = %6363, %6361
  %.pn723 = phi { ptr, i32 } [ %6364, %6363 ], [ %6362, %6361 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %602) #6
  br label %.loopexit.split-lp

6366:                                             ; preds = %6332
  %6367 = landingpad { ptr, i32 }
          cleanup
  br label %6373

6368:                                             ; preds = %6335, %6333
  %6369 = landingpad { ptr, i32 }
          cleanup
  br label %6372

6370:                                             ; preds = %6336
  %6371 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %603) #6
  br label %6372

6372:                                             ; preds = %6370, %6368
  %.pn725 = phi { ptr, i32 } [ %6371, %6370 ], [ %6369, %6368 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %604) #6
  br label %6373

6373:                                             ; preds = %6372, %6366
  %.pn725.pn = phi { ptr, i32 } [ %.pn725, %6372 ], [ %6367, %6366 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %604) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %603) #6
  br label %.loopexit.split-lp

6374:                                             ; preds = %6343
  %6375 = landingpad { ptr, i32 }
          cleanup
  br label %6378

6376:                                             ; preds = %6346, %6344
  %6377 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %605) #6
  br label %6378

6378:                                             ; preds = %6376, %6374
  %.pn728 = phi { ptr, i32 } [ %6377, %6376 ], [ %6375, %6374 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %605) #6
  br label %.loopexit.split-lp

6379:                                             ; preds = %6348
  %6380 = landingpad { ptr, i32 }
          cleanup
  br label %6383

6381:                                             ; preds = %6351, %6349
  %6382 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %606) #6
  br label %6383

6383:                                             ; preds = %6381, %6379
  %.pn730 = phi { ptr, i32 } [ %6382, %6381 ], [ %6380, %6379 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %606) #6
  br label %.loopexit.split-lp

6384:                                             ; preds = %6355
  %6385 = landingpad { ptr, i32 }
          cleanup
  br label %6388

6386:                                             ; preds = %6356
  %6387 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %607) #6
  br label %6388

6388:                                             ; preds = %6386, %6384
  %.pn732 = phi { ptr, i32 } [ %6387, %6386 ], [ %6385, %6384 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %607) #6
  br label %.loopexit.split-lp

6389:                                             ; preds = %6340
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %608) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %608, i32 noundef -33)
          to label %6390 unwind label %6405

6390:                                             ; preds = %6389
  %6391 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %608)
          to label %6392 unwind label %6407

6392:                                             ; preds = %6390
  %6393 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %6, ptr noundef nonnull align 1 dereferenceable(1) %6391)
          to label %6394 unwind label %6407

6394:                                             ; preds = %6392
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %608) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %608) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %609) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %609, i32 noundef -32)
          to label %6395 unwind label %6410

6395:                                             ; preds = %6394
  %6396 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %609)
          to label %6397 unwind label %6412

6397:                                             ; preds = %6395
  %6398 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %7, ptr noundef nonnull align 1 dereferenceable(1) %6396)
          to label %6399 unwind label %6412

6399:                                             ; preds = %6397
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %609) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %609) #6
  %6400 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 4)
          to label %6401 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6401:                                             ; preds = %6399
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %610) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %610, i32 noundef 4)
          to label %6402 unwind label %6415

6402:                                             ; preds = %6401
  %6403 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %610)
          to label %6404 unwind label %6417

6404:                                             ; preds = %6402
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %610) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %610) #6
  br label %6420

6405:                                             ; preds = %6389
  %6406 = landingpad { ptr, i32 }
          cleanup
  br label %6409

6407:                                             ; preds = %6392, %6390
  %6408 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %608) #6
  br label %6409

6409:                                             ; preds = %6407, %6405
  %.pn734 = phi { ptr, i32 } [ %6408, %6407 ], [ %6406, %6405 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %608) #6
  br label %.loopexit.split-lp

6410:                                             ; preds = %6394
  %6411 = landingpad { ptr, i32 }
          cleanup
  br label %6414

6412:                                             ; preds = %6397, %6395
  %6413 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %609) #6
  br label %6414

6414:                                             ; preds = %6412, %6410
  %.pn736 = phi { ptr, i32 } [ %6413, %6412 ], [ %6411, %6410 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %609) #6
  br label %.loopexit.split-lp

6415:                                             ; preds = %6401
  %6416 = landingpad { ptr, i32 }
          cleanup
  br label %6419

6417:                                             ; preds = %6402
  %6418 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %610) #6
  br label %6419

6419:                                             ; preds = %6417, %6415
  %.pn738 = phi { ptr, i32 } [ %6418, %6417 ], [ %6416, %6415 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %610) #6
  br label %.loopexit.split-lp

6420:                                             ; preds = %6404, %6358
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %611) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %611, i32 noundef 3)
          to label %6421 unwind label %6433

6421:                                             ; preds = %6420
  %6422 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %611)
          to label %6423 unwind label %6435

6423:                                             ; preds = %6421
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %611) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %611) #6
  %6424 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %6425 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6425:                                             ; preds = %6423
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %612) #6
  store i8 1, ptr %612, align 1, !tbaa !5
  %6426 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %612)
          to label %6427 unwind label %6438

6427:                                             ; preds = %6425
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %612) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1795 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1795:                                   ; preds = %6427, %6432
  %6428 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %6429 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1797

6429:                                             ; preds = %.preheader1795
  %6430 = load i8, ptr %6428, align 1, !tbaa !5, !range !9, !noundef !10
  %6431 = trunc nuw i8 %6430 to i1
  br i1 %6431, label %6440, label %6432

6432:                                             ; preds = %6429
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1795 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1797, !llvm.loop !129

6433:                                             ; preds = %6420
  %6434 = landingpad { ptr, i32 }
          cleanup
  br label %6437

6435:                                             ; preds = %6421
  %6436 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %611) #6
  br label %6437

6437:                                             ; preds = %6435, %6433
  %.pn740 = phi { ptr, i32 } [ %6436, %6435 ], [ %6434, %6433 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %611) #6
  br label %.loopexit.split-lp

6438:                                             ; preds = %6425
  %6439 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %612) #6
  br label %.loopexit.split-lp

6440:                                             ; preds = %6429
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6441 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6441:                                             ; preds = %6440
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %613) #6
  store i8 0, ptr %613, align 1, !tbaa !5
  %6442 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %613)
          to label %6443 unwind label %6465

6443:                                             ; preds = %6441
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %613) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6444 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6444:                                             ; preds = %6443
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %614) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %614, i32 noundef 2)
          to label %6445 unwind label %6467

6445:                                             ; preds = %6444
  %6446 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %614)
          to label %6447 unwind label %6469

6447:                                             ; preds = %6445
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %614) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %614) #6
  %6448 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %6)
          to label %6449 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6449:                                             ; preds = %6447
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %615) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %615, i32 noundef 1)
          to label %6450 unwind label %6472

6450:                                             ; preds = %6449
  %6451 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %615)
          to label %6452 unwind label %6474

6452:                                             ; preds = %6450
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %615) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %615) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %616) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %616, i32 noundef 3)
          to label %6453 unwind label %6477

6453:                                             ; preds = %6452
  %6454 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %616)
          to label %6455 unwind label %6479

6455:                                             ; preds = %6453
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %616) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %616) #6
  %6456 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %6457 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6457:                                             ; preds = %6455
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %617) #6
  store i8 1, ptr %617, align 1, !tbaa !5
  %6458 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %617)
          to label %6459 unwind label %6482

6459:                                             ; preds = %6457
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %617) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1787 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1787:                                   ; preds = %6459, %6464
  %6460 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %6461 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1789

6461:                                             ; preds = %.preheader1787
  %6462 = load i8, ptr %6460, align 1, !tbaa !5, !range !9, !noundef !10
  %6463 = trunc nuw i8 %6462 to i1
  br i1 %6463, label %6484, label %6464

6464:                                             ; preds = %6461
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1787 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1789, !llvm.loop !130

6465:                                             ; preds = %6441
  %6466 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %613) #6
  br label %.loopexit.split-lp

6467:                                             ; preds = %6444
  %6468 = landingpad { ptr, i32 }
          cleanup
  br label %6471

6469:                                             ; preds = %6445
  %6470 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %614) #6
  br label %6471

6471:                                             ; preds = %6469, %6467
  %.pn742 = phi { ptr, i32 } [ %6470, %6469 ], [ %6468, %6467 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %614) #6
  br label %.loopexit.split-lp

6472:                                             ; preds = %6449
  %6473 = landingpad { ptr, i32 }
          cleanup
  br label %6476

6474:                                             ; preds = %6450
  %6475 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %615) #6
  br label %6476

6476:                                             ; preds = %6474, %6472
  %.pn744 = phi { ptr, i32 } [ %6475, %6474 ], [ %6473, %6472 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %615) #6
  br label %.loopexit.split-lp

6477:                                             ; preds = %6452
  %6478 = landingpad { ptr, i32 }
          cleanup
  br label %6481

6479:                                             ; preds = %6453
  %6480 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %616) #6
  br label %6481

6481:                                             ; preds = %6479, %6477
  %.pn746 = phi { ptr, i32 } [ %6480, %6479 ], [ %6478, %6477 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %616) #6
  br label %.loopexit.split-lp

6482:                                             ; preds = %6457
  %6483 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %617) #6
  br label %.loopexit.split-lp

6484:                                             ; preds = %6461
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6485 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6485:                                             ; preds = %6484
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %618) #6
  store i8 0, ptr %618, align 1, !tbaa !5
  %6486 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %618)
          to label %6487 unwind label %6509

6487:                                             ; preds = %6485
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %618) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6488 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6488:                                             ; preds = %6487
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %619) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %619, i32 noundef 20)
          to label %6489 unwind label %6511

6489:                                             ; preds = %6488
  %6490 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %619)
          to label %6491 unwind label %6513

6491:                                             ; preds = %6489
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %619) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %619) #6
  %6492 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %7)
          to label %6493 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6493:                                             ; preds = %6491
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %620) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %620, i32 noundef 4)
          to label %6494 unwind label %6516

6494:                                             ; preds = %6493
  %6495 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %620)
          to label %6496 unwind label %6518

6496:                                             ; preds = %6494
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %620) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %620) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %621) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %621, i32 noundef 3)
          to label %6497 unwind label %6521

6497:                                             ; preds = %6496
  %6498 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %621)
          to label %6499 unwind label %6523

6499:                                             ; preds = %6497
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %621) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %621) #6
  %6500 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %6501 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6501:                                             ; preds = %6499
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %622) #6
  store i8 1, ptr %622, align 1, !tbaa !5
  %6502 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %622)
          to label %6503 unwind label %6526

6503:                                             ; preds = %6501
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %622) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1780 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1780:                                   ; preds = %6503, %6508
  %6504 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %6505 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1782

6505:                                             ; preds = %.preheader1780
  %6506 = load i8, ptr %6504, align 1, !tbaa !5, !range !9, !noundef !10
  %6507 = trunc nuw i8 %6506 to i1
  br i1 %6507, label %6528, label %6508

6508:                                             ; preds = %6505
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1780 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1782, !llvm.loop !131

6509:                                             ; preds = %6485
  %6510 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %618) #6
  br label %.loopexit.split-lp

6511:                                             ; preds = %6488
  %6512 = landingpad { ptr, i32 }
          cleanup
  br label %6515

6513:                                             ; preds = %6489
  %6514 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %619) #6
  br label %6515

6515:                                             ; preds = %6513, %6511
  %.pn748 = phi { ptr, i32 } [ %6514, %6513 ], [ %6512, %6511 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %619) #6
  br label %.loopexit.split-lp

6516:                                             ; preds = %6493
  %6517 = landingpad { ptr, i32 }
          cleanup
  br label %6520

6518:                                             ; preds = %6494
  %6519 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %620) #6
  br label %6520

6520:                                             ; preds = %6518, %6516
  %.pn750 = phi { ptr, i32 } [ %6519, %6518 ], [ %6517, %6516 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %620) #6
  br label %.loopexit.split-lp

6521:                                             ; preds = %6496
  %6522 = landingpad { ptr, i32 }
          cleanup
  br label %6525

6523:                                             ; preds = %6497
  %6524 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %621) #6
  br label %6525

6525:                                             ; preds = %6523, %6521
  %.pn752 = phi { ptr, i32 } [ %6524, %6523 ], [ %6522, %6521 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %621) #6
  br label %.loopexit.split-lp

6526:                                             ; preds = %6501
  %6527 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %622) #6
  br label %.loopexit.split-lp

6528:                                             ; preds = %6505
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6529 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6529:                                             ; preds = %6528
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %623) #6
  store i8 0, ptr %623, align 1, !tbaa !5
  %6530 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %623)
          to label %6531 unwind label %6554

6531:                                             ; preds = %6529
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %623) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6532 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6532:                                             ; preds = %6531
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %624) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %624, i32 noundef 272)
          to label %6533 unwind label %6556

6533:                                             ; preds = %6532
  %6534 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %624)
          to label %6535 unwind label %6558

6535:                                             ; preds = %6533
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %624) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %624) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %625) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %626) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %626, i32 noundef 0)
          to label %6536 unwind label %6561

6536:                                             ; preds = %6535
  %6537 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %626)
          to label %6538 unwind label %6563

6538:                                             ; preds = %6536
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %625, ptr noundef nonnull align 1 dereferenceable(1) %6537)
          to label %6539 unwind label %6563

6539:                                             ; preds = %6538
  %6540 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %625)
          to label %6541 unwind label %6565

6541:                                             ; preds = %6539
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %625) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %626) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %626) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %625) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %627) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %627, i32 noundef 1)
          to label %6542 unwind label %6569

6542:                                             ; preds = %6541
  %6543 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %627)
          to label %6544 unwind label %6571

6544:                                             ; preds = %6542
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %627) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %627) #6
  %6545 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %6546 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6546:                                             ; preds = %6544
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %628) #6
  store i8 1, ptr %628, align 1, !tbaa !5
  %6547 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %628)
          to label %6548 unwind label %6574

6548:                                             ; preds = %6546
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %628) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1772 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1772:                                   ; preds = %6548, %6553
  %6549 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %6550 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1774

6550:                                             ; preds = %.preheader1772
  %6551 = load i8, ptr %6549, align 1, !tbaa !5, !range !9, !noundef !10
  %6552 = trunc nuw i8 %6551 to i1
  br i1 %6552, label %6576, label %6553

6553:                                             ; preds = %6550
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1772 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1774, !llvm.loop !132

6554:                                             ; preds = %6529
  %6555 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %623) #6
  br label %.loopexit.split-lp

6556:                                             ; preds = %6532
  %6557 = landingpad { ptr, i32 }
          cleanup
  br label %6560

6558:                                             ; preds = %6533
  %6559 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %624) #6
  br label %6560

6560:                                             ; preds = %6558, %6556
  %.pn754 = phi { ptr, i32 } [ %6559, %6558 ], [ %6557, %6556 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %624) #6
  br label %.loopexit.split-lp

6561:                                             ; preds = %6535
  %6562 = landingpad { ptr, i32 }
          cleanup
  br label %6568

6563:                                             ; preds = %6538, %6536
  %6564 = landingpad { ptr, i32 }
          cleanup
  br label %6567

6565:                                             ; preds = %6539
  %6566 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %625) #6
  br label %6567

6567:                                             ; preds = %6565, %6563
  %.pn756 = phi { ptr, i32 } [ %6566, %6565 ], [ %6564, %6563 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %626) #6
  br label %6568

6568:                                             ; preds = %6567, %6561
  %.pn756.pn = phi { ptr, i32 } [ %.pn756, %6567 ], [ %6562, %6561 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %626) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %625) #6
  br label %.loopexit.split-lp

6569:                                             ; preds = %6541
  %6570 = landingpad { ptr, i32 }
          cleanup
  br label %6573

6571:                                             ; preds = %6542
  %6572 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %627) #6
  br label %6573

6573:                                             ; preds = %6571, %6569
  %.pn759 = phi { ptr, i32 } [ %6572, %6571 ], [ %6570, %6569 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %627) #6
  br label %.loopexit.split-lp

6574:                                             ; preds = %6546
  %6575 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %628) #6
  br label %.loopexit.split-lp

6576:                                             ; preds = %6550
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6577 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6577:                                             ; preds = %6576
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %629) #6
  store i8 0, ptr %629, align 1, !tbaa !5
  %6578 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %629)
          to label %6579 unwind label %6602

6579:                                             ; preds = %6577
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %629) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6580 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6580:                                             ; preds = %6579
  %6581 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %26, i32 noundef -2)
          to label %6582 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6582:                                             ; preds = %6580
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %630) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %630, i32 noundef -8192)
          to label %6583 unwind label %6604

6583:                                             ; preds = %6582
  %6584 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %630)
          to label %6585 unwind label %6606

6585:                                             ; preds = %6583
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %630) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %630) #6
  %6586 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %6587 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6587:                                             ; preds = %6585
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %631) #6
  store i8 1, ptr %631, align 1, !tbaa !5
  %6588 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %631)
          to label %6589 unwind label %6609

6589:                                             ; preds = %6587
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %631) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %632) #6
  store i8 1, ptr %632, align 1, !tbaa !5
  %6590 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %632)
          to label %6591 unwind label %6611

6591:                                             ; preds = %6589
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %632) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1765 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1765:                                   ; preds = %6591, %6615
  %6592 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168) %1757)
          to label %6593 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1767

6593:                                             ; preds = %.preheader1765
  %6594 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %6592)
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %633) #6
  store i8 0, ptr %633, align 1, !tbaa !5
  %6595 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %633)
          to label %6596 unwind label %6613

6596:                                             ; preds = %6593
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %633) #6
  %6597 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %6598 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1767

6598:                                             ; preds = %6596
  %6599 = load i8, ptr %6597, align 1, !tbaa !5, !range !9, !noundef !10
  %6600 = trunc nuw i8 %6599 to i1
  br i1 %6600, label %6601, label %6615

6601:                                             ; preds = %6598
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6616 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6602:                                             ; preds = %6577
  %6603 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %629) #6
  br label %.loopexit.split-lp

6604:                                             ; preds = %6582
  %6605 = landingpad { ptr, i32 }
          cleanup
  br label %6608

6606:                                             ; preds = %6583
  %6607 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %630) #6
  br label %6608

6608:                                             ; preds = %6606, %6604
  %.pn761 = phi { ptr, i32 } [ %6607, %6606 ], [ %6605, %6604 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %630) #6
  br label %.loopexit.split-lp

6609:                                             ; preds = %6587
  %6610 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %631) #6
  br label %.loopexit.split-lp

6611:                                             ; preds = %6589
  %6612 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %632) #6
  br label %.loopexit.split-lp

6613:                                             ; preds = %6593
  %6614 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %633) #6
  br label %.loopexit.split-lp

6615:                                             ; preds = %6598
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1765 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1767, !llvm.loop !133

6616:                                             ; preds = %6601
  %6617 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %3, i32 noundef 13, i32 noundef 7)
          to label %6618 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6618:                                             ; preds = %6616
  %6619 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %23, ptr noundef nonnull align 8 dereferenceable(28) %6617)
          to label %6620 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6620:                                             ; preds = %6618
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %634) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %635) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %635, i32 noundef 0)
          to label %6621 unwind label %6646

6621:                                             ; preds = %6620
  %6622 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %635)
          to label %6623 unwind label %6648

6623:                                             ; preds = %6621
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %634, ptr noundef nonnull align 1 dereferenceable(1) %6622)
          to label %6624 unwind label %6648

6624:                                             ; preds = %6623
  %6625 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %634)
          to label %6626 unwind label %6650

6626:                                             ; preds = %6624
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %634) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %635) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %635) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %634) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %636) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %637) #6
  invoke void @_ZN5sc_dt6sc_intILi2EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %637, i32 noundef 0)
          to label %6627 unwind label %6654

6627:                                             ; preds = %6626
  %6628 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %637, ptr noundef nonnull align 8 dereferenceable(8) %14)
          to label %6629 unwind label %6656

6629:                                             ; preds = %6627
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %636, ptr noundef nonnull align 1 dereferenceable(1) %6628)
          to label %6630 unwind label %6656

6630:                                             ; preds = %6629
  %6631 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %636)
          to label %6632 unwind label %6658

6632:                                             ; preds = %6630
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %636) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %637) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %637) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %636) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %638) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %638, i32 noundef 22)
          to label %6633 unwind label %6662

6633:                                             ; preds = %6632
  %6634 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %638)
          to label %6635 unwind label %6664

6635:                                             ; preds = %6633
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %638) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %638) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %639) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %639, i32 noundef -3)
          to label %6636 unwind label %6667

6636:                                             ; preds = %6635
  %6637 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %639)
          to label %6638 unwind label %6669

6638:                                             ; preds = %6636
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %639) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %639) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %640) #6
  store i8 1, ptr %640, align 1, !tbaa !5
  %6639 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %640)
          to label %6640 unwind label %6672

6640:                                             ; preds = %6638
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %640) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1757 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1757:                                   ; preds = %6640, %6645
  %6641 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %6642 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1759

6642:                                             ; preds = %.preheader1757
  %6643 = load i8, ptr %6641, align 1, !tbaa !5, !range !9, !noundef !10
  %6644 = trunc nuw i8 %6643 to i1
  br i1 %6644, label %6674, label %6645

6645:                                             ; preds = %6642
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1757 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1759, !llvm.loop !134

6646:                                             ; preds = %6620
  %6647 = landingpad { ptr, i32 }
          cleanup
  br label %6653

6648:                                             ; preds = %6623, %6621
  %6649 = landingpad { ptr, i32 }
          cleanup
  br label %6652

6650:                                             ; preds = %6624
  %6651 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %634) #6
  br label %6652

6652:                                             ; preds = %6650, %6648
  %.pn763 = phi { ptr, i32 } [ %6651, %6650 ], [ %6649, %6648 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %635) #6
  br label %6653

6653:                                             ; preds = %6652, %6646
  %.pn763.pn = phi { ptr, i32 } [ %.pn763, %6652 ], [ %6647, %6646 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %635) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %634) #6
  br label %.loopexit.split-lp

6654:                                             ; preds = %6626
  %6655 = landingpad { ptr, i32 }
          cleanup
  br label %6661

6656:                                             ; preds = %6629, %6627
  %6657 = landingpad { ptr, i32 }
          cleanup
  br label %6660

6658:                                             ; preds = %6630
  %6659 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %636) #6
  br label %6660

6660:                                             ; preds = %6658, %6656
  %.pn766 = phi { ptr, i32 } [ %6659, %6658 ], [ %6657, %6656 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %637) #6
  br label %6661

6661:                                             ; preds = %6660, %6654
  %.pn766.pn = phi { ptr, i32 } [ %.pn766, %6660 ], [ %6655, %6654 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %637) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %636) #6
  br label %.loopexit.split-lp

6662:                                             ; preds = %6632
  %6663 = landingpad { ptr, i32 }
          cleanup
  br label %6666

6664:                                             ; preds = %6633
  %6665 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %638) #6
  br label %6666

6666:                                             ; preds = %6664, %6662
  %.pn769 = phi { ptr, i32 } [ %6665, %6664 ], [ %6663, %6662 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %638) #6
  br label %.loopexit.split-lp

6667:                                             ; preds = %6635
  %6668 = landingpad { ptr, i32 }
          cleanup
  br label %6671

6669:                                             ; preds = %6636
  %6670 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %639) #6
  br label %6671

6671:                                             ; preds = %6669, %6667
  %.pn771 = phi { ptr, i32 } [ %6670, %6669 ], [ %6668, %6667 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %639) #6
  br label %.loopexit.split-lp

6672:                                             ; preds = %6638
  %6673 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %640) #6
  br label %.loopexit.split-lp

6674:                                             ; preds = %6642
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6675 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6675:                                             ; preds = %6674
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %641) #6
  store i8 0, ptr %641, align 1, !tbaa !5
  %6676 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %641)
          to label %6677 unwind label %6703

6677:                                             ; preds = %6675
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %641) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6678 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6678:                                             ; preds = %6677
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %642) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %643) #6
  invoke void @_ZN5sc_dt6sc_intILi6EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %643, i32 noundef 1)
          to label %6679 unwind label %6705

6679:                                             ; preds = %6678
  %6680 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %20, ptr noundef nonnull align 8 dereferenceable(8) %643)
          to label %6681 unwind label %6707

6681:                                             ; preds = %6679
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %642, ptr noundef nonnull align 1 dereferenceable(1) %6680)
          to label %6682 unwind label %6707

6682:                                             ; preds = %6681
  %6683 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %642)
          to label %6684 unwind label %6709

6684:                                             ; preds = %6682
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %642) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %643) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %643) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %642) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %644) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %645) #6
  invoke void @_ZN5sc_dt6sc_intILi2EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %645, i32 noundef 0)
          to label %6685 unwind label %6713

6685:                                             ; preds = %6684
  %6686 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %645, ptr noundef nonnull align 8 dereferenceable(8) %14)
          to label %6687 unwind label %6715

6687:                                             ; preds = %6685
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %644, ptr noundef nonnull align 1 dereferenceable(1) %6686)
          to label %6688 unwind label %6715

6688:                                             ; preds = %6687
  %6689 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %644)
          to label %6690 unwind label %6717

6690:                                             ; preds = %6688
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %644) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %645) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %645) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %644) #6
  %6691 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %23)
          to label %6692 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6692:                                             ; preds = %6690
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %646) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %646, i32 noundef -2)
          to label %6693 unwind label %6721

6693:                                             ; preds = %6692
  %6694 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %646)
          to label %6695 unwind label %6723

6695:                                             ; preds = %6693
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %646) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %646) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %647) #6
  store i8 1, ptr %647, align 1, !tbaa !5
  %6696 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %647)
          to label %6697 unwind label %6726

6697:                                             ; preds = %6695
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %647) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1750 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1750:                                   ; preds = %6697, %6702
  %6698 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %6699 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1752

6699:                                             ; preds = %.preheader1750
  %6700 = load i8, ptr %6698, align 1, !tbaa !5, !range !9, !noundef !10
  %6701 = trunc nuw i8 %6700 to i1
  br i1 %6701, label %6728, label %6702

6702:                                             ; preds = %6699
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1750 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1752, !llvm.loop !135

6703:                                             ; preds = %6675
  %6704 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %641) #6
  br label %.loopexit.split-lp

6705:                                             ; preds = %6678
  %6706 = landingpad { ptr, i32 }
          cleanup
  br label %6712

6707:                                             ; preds = %6681, %6679
  %6708 = landingpad { ptr, i32 }
          cleanup
  br label %6711

6709:                                             ; preds = %6682
  %6710 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %642) #6
  br label %6711

6711:                                             ; preds = %6709, %6707
  %.pn773 = phi { ptr, i32 } [ %6710, %6709 ], [ %6708, %6707 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %643) #6
  br label %6712

6712:                                             ; preds = %6711, %6705
  %.pn773.pn = phi { ptr, i32 } [ %.pn773, %6711 ], [ %6706, %6705 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %643) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %642) #6
  br label %.loopexit.split-lp

6713:                                             ; preds = %6684
  %6714 = landingpad { ptr, i32 }
          cleanup
  br label %6720

6715:                                             ; preds = %6687, %6685
  %6716 = landingpad { ptr, i32 }
          cleanup
  br label %6719

6717:                                             ; preds = %6688
  %6718 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %644) #6
  br label %6719

6719:                                             ; preds = %6717, %6715
  %.pn776 = phi { ptr, i32 } [ %6718, %6717 ], [ %6716, %6715 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %645) #6
  br label %6720

6720:                                             ; preds = %6719, %6713
  %.pn776.pn = phi { ptr, i32 } [ %.pn776, %6719 ], [ %6714, %6713 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %645) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %644) #6
  br label %.loopexit.split-lp

6721:                                             ; preds = %6692
  %6722 = landingpad { ptr, i32 }
          cleanup
  br label %6725

6723:                                             ; preds = %6693
  %6724 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %646) #6
  br label %6725

6725:                                             ; preds = %6723, %6721
  %.pn779 = phi { ptr, i32 } [ %6724, %6723 ], [ %6722, %6721 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %646) #6
  br label %.loopexit.split-lp

6726:                                             ; preds = %6695
  %6727 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %647) #6
  br label %.loopexit.split-lp

6728:                                             ; preds = %6699
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6729 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6729:                                             ; preds = %6728
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %648) #6
  store i8 0, ptr %648, align 1, !tbaa !5
  %6730 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %648)
          to label %6731 unwind label %6755

6731:                                             ; preds = %6729
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %648) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6732 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6732:                                             ; preds = %6731
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %649) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %649, i32 noundef 10)
          to label %6733 unwind label %6757

6733:                                             ; preds = %6732
  %6734 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %649)
          to label %6735 unwind label %6759

6735:                                             ; preds = %6733
  %6736 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 1 dereferenceable(1) %6734)
          to label %6737 unwind label %6759

6737:                                             ; preds = %6735
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %649) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %649) #6
  %6738 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %2, i32 noundef 0)
          to label %6739 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6739:                                             ; preds = %6737
  %6740 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %6741 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6741:                                             ; preds = %6739
  %6742 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %6743 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6743:                                             ; preds = %6741
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %650) #6
  store i8 0, ptr %650, align 1, !tbaa !5
  %6744 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %650)
          to label %6745 unwind label %6762

6745:                                             ; preds = %6743
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %650) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %651) #6
  store i8 1, ptr %651, align 1, !tbaa !5
  %6746 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %651)
          to label %6747 unwind label %6764

6747:                                             ; preds = %6745
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %651) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1742 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1742:                                   ; preds = %6747, %6768
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %652) #6
  store i8 0, ptr %652, align 1, !tbaa !5
  %6748 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %652)
          to label %6749 unwind label %6766

6749:                                             ; preds = %.preheader1742
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %652) #6
  %6750 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %6751 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1744

6751:                                             ; preds = %6749
  %6752 = load i8, ptr %6750, align 1, !tbaa !5, !range !9, !noundef !10
  %6753 = trunc nuw i8 %6752 to i1
  br i1 %6753, label %6754, label %6768

6754:                                             ; preds = %6751
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6769 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6755:                                             ; preds = %6729
  %6756 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %648) #6
  br label %.loopexit.split-lp

6757:                                             ; preds = %6732
  %6758 = landingpad { ptr, i32 }
          cleanup
  br label %6761

6759:                                             ; preds = %6735, %6733
  %6760 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %649) #6
  br label %6761

6761:                                             ; preds = %6759, %6757
  %.pn781 = phi { ptr, i32 } [ %6760, %6759 ], [ %6758, %6757 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %649) #6
  br label %.loopexit.split-lp

6762:                                             ; preds = %6743
  %6763 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %650) #6
  br label %.loopexit.split-lp

6764:                                             ; preds = %6745
  %6765 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %651) #6
  br label %.loopexit.split-lp

6766:                                             ; preds = %.preheader1742
  %6767 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %652) #6
  br label %.loopexit.split-lp

6768:                                             ; preds = %6751
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1742 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1744, !llvm.loop !136

6769:                                             ; preds = %6754
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %653) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %653, i32 noundef 16)
          to label %6770 unwind label %6794

6770:                                             ; preds = %6769
  %6771 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %653)
          to label %6772 unwind label %6796

6772:                                             ; preds = %6770
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %653) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %653) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %654) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %655) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %655, i32 noundef 24)
          to label %6773 unwind label %6799

6773:                                             ; preds = %6772
  %6774 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %655)
          to label %6775 unwind label %6801

6775:                                             ; preds = %6773
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %654, ptr noundef nonnull align 1 dereferenceable(1) %6774)
          to label %6776 unwind label %6801

6776:                                             ; preds = %6775
  %6777 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %654)
          to label %6778 unwind label %6803

6778:                                             ; preds = %6776
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %654) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %655) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %655) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %654) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %656) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %656, i32 noundef 3)
          to label %6779 unwind label %6807

6779:                                             ; preds = %6778
  %6780 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %656)
          to label %6781 unwind label %6809

6781:                                             ; preds = %6779
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %656) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %656) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %657) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %657, i32 noundef 3)
          to label %6782 unwind label %6812

6782:                                             ; preds = %6781
  %6783 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %657)
          to label %6784 unwind label %6814

6784:                                             ; preds = %6782
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %657) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %657) #6
  %6785 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %6786 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6786:                                             ; preds = %6784
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %658) #6
  store i8 1, ptr %658, align 1, !tbaa !5
  %6787 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %658)
          to label %6788 unwind label %6817

6788:                                             ; preds = %6786
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %658) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1735 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1735:                                   ; preds = %6788, %6793
  %6789 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %6790 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1737

6790:                                             ; preds = %.preheader1735
  %6791 = load i8, ptr %6789, align 1, !tbaa !5, !range !9, !noundef !10
  %6792 = trunc nuw i8 %6791 to i1
  br i1 %6792, label %6819, label %6793

6793:                                             ; preds = %6790
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1735 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1737, !llvm.loop !137

6794:                                             ; preds = %6769
  %6795 = landingpad { ptr, i32 }
          cleanup
  br label %6798

6796:                                             ; preds = %6770
  %6797 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %653) #6
  br label %6798

6798:                                             ; preds = %6796, %6794
  %.pn783 = phi { ptr, i32 } [ %6797, %6796 ], [ %6795, %6794 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %653) #6
  br label %.loopexit.split-lp

6799:                                             ; preds = %6772
  %6800 = landingpad { ptr, i32 }
          cleanup
  br label %6806

6801:                                             ; preds = %6775, %6773
  %6802 = landingpad { ptr, i32 }
          cleanup
  br label %6805

6803:                                             ; preds = %6776
  %6804 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %654) #6
  br label %6805

6805:                                             ; preds = %6803, %6801
  %.pn785 = phi { ptr, i32 } [ %6804, %6803 ], [ %6802, %6801 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %655) #6
  br label %6806

6806:                                             ; preds = %6805, %6799
  %.pn785.pn = phi { ptr, i32 } [ %.pn785, %6805 ], [ %6800, %6799 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %655) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %654) #6
  br label %.loopexit.split-lp

6807:                                             ; preds = %6778
  %6808 = landingpad { ptr, i32 }
          cleanup
  br label %6811

6809:                                             ; preds = %6779
  %6810 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %656) #6
  br label %6811

6811:                                             ; preds = %6809, %6807
  %.pn788 = phi { ptr, i32 } [ %6810, %6809 ], [ %6808, %6807 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %656) #6
  br label %.loopexit.split-lp

6812:                                             ; preds = %6781
  %6813 = landingpad { ptr, i32 }
          cleanup
  br label %6816

6814:                                             ; preds = %6782
  %6815 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %657) #6
  br label %6816

6816:                                             ; preds = %6814, %6812
  %.pn790 = phi { ptr, i32 } [ %6815, %6814 ], [ %6813, %6812 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %657) #6
  br label %.loopexit.split-lp

6817:                                             ; preds = %6786
  %6818 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %658) #6
  br label %.loopexit.split-lp

6819:                                             ; preds = %6790
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6820 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6820:                                             ; preds = %6819
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %659) #6
  store i8 0, ptr %659, align 1, !tbaa !5
  %6821 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %659)
          to label %6822 unwind label %6848

6822:                                             ; preds = %6820
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %659) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6823 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6823:                                             ; preds = %6822
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %660) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %660, i32 noundef 96)
          to label %6824 unwind label %6850

6824:                                             ; preds = %6823
  %6825 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %660)
          to label %6826 unwind label %6852

6826:                                             ; preds = %6824
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %660) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %660) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %661) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %662) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %662, i32 noundef 27)
          to label %6827 unwind label %6855

6827:                                             ; preds = %6826
  %6828 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %662)
          to label %6829 unwind label %6857

6829:                                             ; preds = %6827
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %661, ptr noundef nonnull align 1 dereferenceable(1) %6828)
          to label %6830 unwind label %6857

6830:                                             ; preds = %6829
  %6831 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %661)
          to label %6832 unwind label %6859

6832:                                             ; preds = %6830
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %661) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %662) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %662) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %661) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %663) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %663, i32 noundef 32)
          to label %6833 unwind label %6863

6833:                                             ; preds = %6832
  %6834 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %663)
          to label %6835 unwind label %6865

6835:                                             ; preds = %6833
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %663) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %663) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %664) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %664, i32 noundef 3)
          to label %6836 unwind label %6868

6836:                                             ; preds = %6835
  %6837 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %664)
          to label %6838 unwind label %6870

6838:                                             ; preds = %6836
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %664) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %664) #6
  %6839 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %6840 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6840:                                             ; preds = %6838
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %665) #6
  store i8 1, ptr %665, align 1, !tbaa !5
  %6841 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %665)
          to label %6842 unwind label %6873

6842:                                             ; preds = %6840
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %665) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1727 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1727:                                   ; preds = %6842, %6847
  %6843 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %6844 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1729

6844:                                             ; preds = %.preheader1727
  %6845 = load i8, ptr %6843, align 1, !tbaa !5, !range !9, !noundef !10
  %6846 = trunc nuw i8 %6845 to i1
  br i1 %6846, label %6875, label %6847

6847:                                             ; preds = %6844
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1727 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1729, !llvm.loop !138

6848:                                             ; preds = %6820
  %6849 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %659) #6
  br label %.loopexit.split-lp

6850:                                             ; preds = %6823
  %6851 = landingpad { ptr, i32 }
          cleanup
  br label %6854

6852:                                             ; preds = %6824
  %6853 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %660) #6
  br label %6854

6854:                                             ; preds = %6852, %6850
  %.pn792 = phi { ptr, i32 } [ %6853, %6852 ], [ %6851, %6850 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %660) #6
  br label %.loopexit.split-lp

6855:                                             ; preds = %6826
  %6856 = landingpad { ptr, i32 }
          cleanup
  br label %6862

6857:                                             ; preds = %6829, %6827
  %6858 = landingpad { ptr, i32 }
          cleanup
  br label %6861

6859:                                             ; preds = %6830
  %6860 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %661) #6
  br label %6861

6861:                                             ; preds = %6859, %6857
  %.pn794 = phi { ptr, i32 } [ %6860, %6859 ], [ %6858, %6857 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %662) #6
  br label %6862

6862:                                             ; preds = %6861, %6855
  %.pn794.pn = phi { ptr, i32 } [ %.pn794, %6861 ], [ %6856, %6855 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %662) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %661) #6
  br label %.loopexit.split-lp

6863:                                             ; preds = %6832
  %6864 = landingpad { ptr, i32 }
          cleanup
  br label %6867

6865:                                             ; preds = %6833
  %6866 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %663) #6
  br label %6867

6867:                                             ; preds = %6865, %6863
  %.pn797 = phi { ptr, i32 } [ %6866, %6865 ], [ %6864, %6863 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %663) #6
  br label %.loopexit.split-lp

6868:                                             ; preds = %6835
  %6869 = landingpad { ptr, i32 }
          cleanup
  br label %6872

6870:                                             ; preds = %6836
  %6871 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %664) #6
  br label %6872

6872:                                             ; preds = %6870, %6868
  %.pn799 = phi { ptr, i32 } [ %6871, %6870 ], [ %6869, %6868 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %664) #6
  br label %.loopexit.split-lp

6873:                                             ; preds = %6840
  %6874 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %665) #6
  br label %.loopexit.split-lp

6875:                                             ; preds = %6844
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6876 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6876:                                             ; preds = %6875
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %666) #6
  store i8 0, ptr %666, align 1, !tbaa !5
  %6877 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %666)
          to label %6878 unwind label %6901

6878:                                             ; preds = %6876
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %666) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6879 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6879:                                             ; preds = %6878
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %667) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %667, i32 noundef 160)
          to label %6880 unwind label %6903

6880:                                             ; preds = %6879
  %6881 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %667)
          to label %6882 unwind label %6905

6882:                                             ; preds = %6880
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %667) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %667) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %668) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %669) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %669, i32 noundef 59)
          to label %6883 unwind label %6908

6883:                                             ; preds = %6882
  %6884 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %669)
          to label %6885 unwind label %6910

6885:                                             ; preds = %6883
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %668, ptr noundef nonnull align 1 dereferenceable(1) %6884)
          to label %6886 unwind label %6910

6886:                                             ; preds = %6885
  %6887 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %668)
          to label %6888 unwind label %6912

6888:                                             ; preds = %6886
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %668) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %669) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %669) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %668) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %670) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %670, i32 noundef 3)
          to label %6889 unwind label %6916

6889:                                             ; preds = %6888
  %6890 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %670)
          to label %6891 unwind label %6918

6891:                                             ; preds = %6889
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %670) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %670) #6
  %6892 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %6893 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6893:                                             ; preds = %6891
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %671) #6
  store i8 1, ptr %671, align 1, !tbaa !5
  %6894 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %671)
          to label %6895 unwind label %6921

6895:                                             ; preds = %6893
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %671) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1720 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1720:                                   ; preds = %6895, %6900
  %6896 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %6897 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1722

6897:                                             ; preds = %.preheader1720
  %6898 = load i8, ptr %6896, align 1, !tbaa !5, !range !9, !noundef !10
  %6899 = trunc nuw i8 %6898 to i1
  br i1 %6899, label %6923, label %6900

6900:                                             ; preds = %6897
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1720 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1722, !llvm.loop !139

6901:                                             ; preds = %6876
  %6902 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %666) #6
  br label %.loopexit.split-lp

6903:                                             ; preds = %6879
  %6904 = landingpad { ptr, i32 }
          cleanup
  br label %6907

6905:                                             ; preds = %6880
  %6906 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %667) #6
  br label %6907

6907:                                             ; preds = %6905, %6903
  %.pn801 = phi { ptr, i32 } [ %6906, %6905 ], [ %6904, %6903 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %667) #6
  br label %.loopexit.split-lp

6908:                                             ; preds = %6882
  %6909 = landingpad { ptr, i32 }
          cleanup
  br label %6915

6910:                                             ; preds = %6885, %6883
  %6911 = landingpad { ptr, i32 }
          cleanup
  br label %6914

6912:                                             ; preds = %6886
  %6913 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %668) #6
  br label %6914

6914:                                             ; preds = %6912, %6910
  %.pn803 = phi { ptr, i32 } [ %6913, %6912 ], [ %6911, %6910 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %669) #6
  br label %6915

6915:                                             ; preds = %6914, %6908
  %.pn803.pn = phi { ptr, i32 } [ %.pn803, %6914 ], [ %6909, %6908 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %669) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %668) #6
  br label %.loopexit.split-lp

6916:                                             ; preds = %6888
  %6917 = landingpad { ptr, i32 }
          cleanup
  br label %6920

6918:                                             ; preds = %6889
  %6919 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %670) #6
  br label %6920

6920:                                             ; preds = %6918, %6916
  %.pn806 = phi { ptr, i32 } [ %6919, %6918 ], [ %6917, %6916 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %670) #6
  br label %.loopexit.split-lp

6921:                                             ; preds = %6893
  %6922 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %671) #6
  br label %.loopexit.split-lp

6923:                                             ; preds = %6897
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6924 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6924:                                             ; preds = %6923
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %672) #6
  store i8 0, ptr %672, align 1, !tbaa !5
  %6925 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %672)
          to label %6926 unwind label %6954

6926:                                             ; preds = %6924
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %672) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6927 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6927:                                             ; preds = %6926
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %673) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %673, i32 noundef 48)
          to label %6928 unwind label %6956

6928:                                             ; preds = %6927
  %6929 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %673)
          to label %6930 unwind label %6958

6930:                                             ; preds = %6928
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %673) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %673) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %674) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %675) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %675, i32 noundef -37)
          to label %6931 unwind label %6961

6931:                                             ; preds = %6930
  %6932 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %675)
          to label %6933 unwind label %6963

6933:                                             ; preds = %6931
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %674, ptr noundef nonnull align 1 dereferenceable(1) %6932)
          to label %6934 unwind label %6963

6934:                                             ; preds = %6933
  %6935 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %674)
          to label %6936 unwind label %6965

6936:                                             ; preds = %6934
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %674) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %675) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %675) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %674) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %676) #6
  %6937 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 6, i32 noundef 0)
          to label %6938 unwind label %6969

6938:                                             ; preds = %6936
  invoke void @_ZN5sc_dt6sc_intILi7EEC2ERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24) %676, ptr noundef nonnull align 8 dereferenceable(28) %6937)
          to label %6939 unwind label %6969

6939:                                             ; preds = %6938
  %6940 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %676)
          to label %6941 unwind label %6971

6941:                                             ; preds = %6939
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %676) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %676) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %677) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %677, i32 noundef 3)
          to label %6942 unwind label %6974

6942:                                             ; preds = %6941
  %6943 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %677)
          to label %6944 unwind label %6976

6944:                                             ; preds = %6942
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %677) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %677) #6
  %6945 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %6946 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6946:                                             ; preds = %6944
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %678) #6
  store i8 1, ptr %678, align 1, !tbaa !5
  %6947 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %678)
          to label %6948 unwind label %6979

6948:                                             ; preds = %6946
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %678) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1712 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1712:                                   ; preds = %6948, %6953
  %6949 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %6950 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1714

6950:                                             ; preds = %.preheader1712
  %6951 = load i8, ptr %6949, align 1, !tbaa !5, !range !9, !noundef !10
  %6952 = trunc nuw i8 %6951 to i1
  br i1 %6952, label %6981, label %6953

6953:                                             ; preds = %6950
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1712 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1714, !llvm.loop !140

6954:                                             ; preds = %6924
  %6955 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %672) #6
  br label %.loopexit.split-lp

6956:                                             ; preds = %6927
  %6957 = landingpad { ptr, i32 }
          cleanup
  br label %6960

6958:                                             ; preds = %6928
  %6959 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %673) #6
  br label %6960

6960:                                             ; preds = %6958, %6956
  %.pn808 = phi { ptr, i32 } [ %6959, %6958 ], [ %6957, %6956 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %673) #6
  br label %.loopexit.split-lp

6961:                                             ; preds = %6930
  %6962 = landingpad { ptr, i32 }
          cleanup
  br label %6968

6963:                                             ; preds = %6933, %6931
  %6964 = landingpad { ptr, i32 }
          cleanup
  br label %6967

6965:                                             ; preds = %6934
  %6966 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %674) #6
  br label %6967

6967:                                             ; preds = %6965, %6963
  %.pn810 = phi { ptr, i32 } [ %6966, %6965 ], [ %6964, %6963 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %675) #6
  br label %6968

6968:                                             ; preds = %6967, %6961
  %.pn810.pn = phi { ptr, i32 } [ %.pn810, %6967 ], [ %6962, %6961 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %675) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %674) #6
  br label %.loopexit.split-lp

6969:                                             ; preds = %6938, %6936
  %6970 = landingpad { ptr, i32 }
          cleanup
  br label %6973

6971:                                             ; preds = %6939
  %6972 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %676) #6
  br label %6973

6973:                                             ; preds = %6971, %6969
  %.pn813 = phi { ptr, i32 } [ %6972, %6971 ], [ %6970, %6969 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %676) #6
  br label %.loopexit.split-lp

6974:                                             ; preds = %6941
  %6975 = landingpad { ptr, i32 }
          cleanup
  br label %6978

6976:                                             ; preds = %6942
  %6977 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %677) #6
  br label %6978

6978:                                             ; preds = %6976, %6974
  %.pn815 = phi { ptr, i32 } [ %6977, %6976 ], [ %6975, %6974 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %677) #6
  br label %.loopexit.split-lp

6979:                                             ; preds = %6946
  %6980 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %678) #6
  br label %.loopexit.split-lp

6981:                                             ; preds = %6950
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6982 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6982:                                             ; preds = %6981
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %679) #6
  store i8 0, ptr %679, align 1, !tbaa !5
  %6983 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %679)
          to label %6984 unwind label %7013

6984:                                             ; preds = %6982
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %679) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %6985 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

6985:                                             ; preds = %6984
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %680) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %680, i32 noundef 4)
          to label %6986 unwind label %7015

6986:                                             ; preds = %6985
  %6987 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %680)
          to label %6988 unwind label %7017

6988:                                             ; preds = %6986
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %680) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %680) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %681) #6
  %6989 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %23, i32 noundef 6, i32 noundef 0)
          to label %6990 unwind label %7020

6990:                                             ; preds = %6988
  %6991 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %6, i32 noundef 6, i32 noundef 0)
          to label %6992 unwind label %7020

6992:                                             ; preds = %6990
  %6993 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %6989, ptr noundef nonnull align 8 dereferenceable(8) %6991)
          to label %6994 unwind label %7020

6994:                                             ; preds = %6992
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %681, ptr noundef nonnull align 1 dereferenceable(1) %6993)
          to label %6995 unwind label %7020

6995:                                             ; preds = %6994
  %6996 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %681)
          to label %6997 unwind label %7022

6997:                                             ; preds = %6995
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %681) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %681) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %682) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %682, i32 noundef 1)
          to label %6998 unwind label %7025

6998:                                             ; preds = %6997
  %6999 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %682)
          to label %7000 unwind label %7027

7000:                                             ; preds = %6998
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %682) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %682) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %683) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %683, i32 noundef 3)
          to label %7001 unwind label %7030

7001:                                             ; preds = %7000
  %7002 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %683)
          to label %7003 unwind label %7032

7003:                                             ; preds = %7001
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %683) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %683) #6
  %7004 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7005 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7005:                                             ; preds = %7003
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %684) #6
  store i8 1, ptr %684, align 1, !tbaa !5
  %7006 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %684)
          to label %7007 unwind label %7035

7007:                                             ; preds = %7005
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %684) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1705 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1705:                                   ; preds = %7007, %7012
  %7008 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %7009 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1707

7009:                                             ; preds = %.preheader1705
  %7010 = load i8, ptr %7008, align 1, !tbaa !5, !range !9, !noundef !10
  %7011 = trunc nuw i8 %7010 to i1
  br i1 %7011, label %7037, label %7012

7012:                                             ; preds = %7009
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1705 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1707, !llvm.loop !141

7013:                                             ; preds = %6982
  %7014 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %679) #6
  br label %.loopexit.split-lp

7015:                                             ; preds = %6985
  %7016 = landingpad { ptr, i32 }
          cleanup
  br label %7019

7017:                                             ; preds = %6986
  %7018 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %680) #6
  br label %7019

7019:                                             ; preds = %7017, %7015
  %.pn817 = phi { ptr, i32 } [ %7018, %7017 ], [ %7016, %7015 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %680) #6
  br label %.loopexit.split-lp

7020:                                             ; preds = %6994, %6992, %6990, %6988
  %7021 = landingpad { ptr, i32 }
          cleanup
  br label %7024

7022:                                             ; preds = %6995
  %7023 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %681) #6
  br label %7024

7024:                                             ; preds = %7022, %7020
  %.pn819 = phi { ptr, i32 } [ %7023, %7022 ], [ %7021, %7020 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %681) #6
  br label %.loopexit.split-lp

7025:                                             ; preds = %6997
  %7026 = landingpad { ptr, i32 }
          cleanup
  br label %7029

7027:                                             ; preds = %6998
  %7028 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %682) #6
  br label %7029

7029:                                             ; preds = %7027, %7025
  %.pn821 = phi { ptr, i32 } [ %7028, %7027 ], [ %7026, %7025 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %682) #6
  br label %.loopexit.split-lp

7030:                                             ; preds = %7000
  %7031 = landingpad { ptr, i32 }
          cleanup
  br label %7034

7032:                                             ; preds = %7001
  %7033 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %683) #6
  br label %7034

7034:                                             ; preds = %7032, %7030
  %.pn823 = phi { ptr, i32 } [ %7033, %7032 ], [ %7031, %7030 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %683) #6
  br label %.loopexit.split-lp

7035:                                             ; preds = %7005
  %7036 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %684) #6
  br label %.loopexit.split-lp

7037:                                             ; preds = %7009
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7038 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7038:                                             ; preds = %7037
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %685) #6
  store i8 0, ptr %685, align 1, !tbaa !5
  %7039 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %685)
          to label %7040 unwind label %7069

7040:                                             ; preds = %7038
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %685) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7041 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7041:                                             ; preds = %7040
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %686) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %686, i32 noundef 20)
          to label %7042 unwind label %7071

7042:                                             ; preds = %7041
  %7043 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %686)
          to label %7044 unwind label %7073

7044:                                             ; preds = %7042
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %686) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %686) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %687) #6
  %7045 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %23, i32 noundef 6, i32 noundef 0)
          to label %7046 unwind label %7076

7046:                                             ; preds = %7044
  %7047 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %7, i32 noundef 6, i32 noundef 0)
          to label %7048 unwind label %7076

7048:                                             ; preds = %7046
  %7049 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %7045, ptr noundef nonnull align 8 dereferenceable(8) %7047)
          to label %7050 unwind label %7076

7050:                                             ; preds = %7048
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %687, ptr noundef nonnull align 1 dereferenceable(1) %7049)
          to label %7051 unwind label %7076

7051:                                             ; preds = %7050
  %7052 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %687)
          to label %7053 unwind label %7078

7053:                                             ; preds = %7051
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %687) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %687) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %688) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %688, i32 noundef 4)
          to label %7054 unwind label %7081

7054:                                             ; preds = %7053
  %7055 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %688)
          to label %7056 unwind label %7083

7056:                                             ; preds = %7054
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %688) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %688) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %689) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %689, i32 noundef 3)
          to label %7057 unwind label %7086

7057:                                             ; preds = %7056
  %7058 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %689)
          to label %7059 unwind label %7088

7059:                                             ; preds = %7057
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %689) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %689) #6
  %7060 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7061 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7061:                                             ; preds = %7059
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %690) #6
  store i8 1, ptr %690, align 1, !tbaa !5
  %7062 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %690)
          to label %7063 unwind label %7091

7063:                                             ; preds = %7061
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %690) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1697 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1697:                                   ; preds = %7063, %7068
  %7064 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %7065 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1699

7065:                                             ; preds = %.preheader1697
  %7066 = load i8, ptr %7064, align 1, !tbaa !5, !range !9, !noundef !10
  %7067 = trunc nuw i8 %7066 to i1
  br i1 %7067, label %7093, label %7068

7068:                                             ; preds = %7065
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1697 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1699, !llvm.loop !142

7069:                                             ; preds = %7038
  %7070 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %685) #6
  br label %.loopexit.split-lp

7071:                                             ; preds = %7041
  %7072 = landingpad { ptr, i32 }
          cleanup
  br label %7075

7073:                                             ; preds = %7042
  %7074 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %686) #6
  br label %7075

7075:                                             ; preds = %7073, %7071
  %.pn825 = phi { ptr, i32 } [ %7074, %7073 ], [ %7072, %7071 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %686) #6
  br label %.loopexit.split-lp

7076:                                             ; preds = %7050, %7048, %7046, %7044
  %7077 = landingpad { ptr, i32 }
          cleanup
  br label %7080

7078:                                             ; preds = %7051
  %7079 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %687) #6
  br label %7080

7080:                                             ; preds = %7078, %7076
  %.pn827 = phi { ptr, i32 } [ %7079, %7078 ], [ %7077, %7076 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %687) #6
  br label %.loopexit.split-lp

7081:                                             ; preds = %7053
  %7082 = landingpad { ptr, i32 }
          cleanup
  br label %7085

7083:                                             ; preds = %7054
  %7084 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %688) #6
  br label %7085

7085:                                             ; preds = %7083, %7081
  %.pn829 = phi { ptr, i32 } [ %7084, %7083 ], [ %7082, %7081 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %688) #6
  br label %.loopexit.split-lp

7086:                                             ; preds = %7056
  %7087 = landingpad { ptr, i32 }
          cleanup
  br label %7090

7088:                                             ; preds = %7057
  %7089 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %689) #6
  br label %7090

7090:                                             ; preds = %7088, %7086
  %.pn831 = phi { ptr, i32 } [ %7089, %7088 ], [ %7087, %7086 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %689) #6
  br label %.loopexit.split-lp

7091:                                             ; preds = %7061
  %7092 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %690) #6
  br label %.loopexit.split-lp

7093:                                             ; preds = %7065
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7094 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7094:                                             ; preds = %7093
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %691) #6
  store i8 0, ptr %691, align 1, !tbaa !5
  %7095 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %691)
          to label %7096 unwind label %7121

7096:                                             ; preds = %7094
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %691) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7097 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7097:                                             ; preds = %7096
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %692) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %692, i32 noundef 288)
          to label %7098 unwind label %7123

7098:                                             ; preds = %7097
  %7099 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %692)
          to label %7100 unwind label %7125

7100:                                             ; preds = %7098
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %692) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %692) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %693) #6
  %7101 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %23, i32 noundef 6, i32 noundef 0)
          to label %7102 unwind label %7128

7102:                                             ; preds = %7100
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %694) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %694, i32 noundef 0)
          to label %7103 unwind label %7130

7103:                                             ; preds = %7102
  %7104 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %7101, ptr noundef nonnull align 8 dereferenceable(8) %694)
          to label %7105 unwind label %7132

7105:                                             ; preds = %7103
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %693, ptr noundef nonnull align 1 dereferenceable(1) %7104)
          to label %7106 unwind label %7132

7106:                                             ; preds = %7105
  %7107 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %693)
          to label %7108 unwind label %7134

7108:                                             ; preds = %7106
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %693) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %694) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %694) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %693) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %695) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %695, i32 noundef 1)
          to label %7109 unwind label %7139

7109:                                             ; preds = %7108
  %7110 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %695)
          to label %7111 unwind label %7141

7111:                                             ; preds = %7109
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %695) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %695) #6
  %7112 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7113 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7113:                                             ; preds = %7111
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %696) #6
  store i8 1, ptr %696, align 1, !tbaa !5
  %7114 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %696)
          to label %7115 unwind label %7144

7115:                                             ; preds = %7113
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %696) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1690 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1690:                                   ; preds = %7115, %7120
  %7116 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %7117 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1692

7117:                                             ; preds = %.preheader1690
  %7118 = load i8, ptr %7116, align 1, !tbaa !5, !range !9, !noundef !10
  %7119 = trunc nuw i8 %7118 to i1
  br i1 %7119, label %7146, label %7120

7120:                                             ; preds = %7117
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1690 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1692, !llvm.loop !143

7121:                                             ; preds = %7094
  %7122 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %691) #6
  br label %.loopexit.split-lp

7123:                                             ; preds = %7097
  %7124 = landingpad { ptr, i32 }
          cleanup
  br label %7127

7125:                                             ; preds = %7098
  %7126 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %692) #6
  br label %7127

7127:                                             ; preds = %7125, %7123
  %.pn833 = phi { ptr, i32 } [ %7126, %7125 ], [ %7124, %7123 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %692) #6
  br label %.loopexit.split-lp

7128:                                             ; preds = %7100
  %7129 = landingpad { ptr, i32 }
          cleanup
  br label %7138

7130:                                             ; preds = %7102
  %7131 = landingpad { ptr, i32 }
          cleanup
  br label %7137

7132:                                             ; preds = %7105, %7103
  %7133 = landingpad { ptr, i32 }
          cleanup
  br label %7136

7134:                                             ; preds = %7106
  %7135 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %693) #6
  br label %7136

7136:                                             ; preds = %7134, %7132
  %.pn835 = phi { ptr, i32 } [ %7135, %7134 ], [ %7133, %7132 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %694) #6
  br label %7137

7137:                                             ; preds = %7136, %7130
  %.pn835.pn = phi { ptr, i32 } [ %.pn835, %7136 ], [ %7131, %7130 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %694) #6
  br label %7138

7138:                                             ; preds = %7137, %7128
  %.pn835.pn.pn = phi { ptr, i32 } [ %.pn835.pn, %7137 ], [ %7129, %7128 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %693) #6
  br label %.loopexit.split-lp

7139:                                             ; preds = %7108
  %7140 = landingpad { ptr, i32 }
          cleanup
  br label %7143

7141:                                             ; preds = %7109
  %7142 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %695) #6
  br label %7143

7143:                                             ; preds = %7141, %7139
  %.pn839 = phi { ptr, i32 } [ %7142, %7141 ], [ %7140, %7139 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %695) #6
  br label %.loopexit.split-lp

7144:                                             ; preds = %7113
  %7145 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %696) #6
  br label %.loopexit.split-lp

7146:                                             ; preds = %7117
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7147 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7147:                                             ; preds = %7146
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %697) #6
  store i8 0, ptr %697, align 1, !tbaa !5
  %7148 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %697)
          to label %7149 unwind label %7150

7149:                                             ; preds = %7147
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %697) #6
  br label %.invoke2304

7150:                                             ; preds = %7147
  %7151 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %697) #6
  br label %.loopexit.split-lp

7152:                                             ; preds = %2026
  %7153 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %12)
  %.not605 = icmp eq i64 %7153, 3
  br i1 %.not605, label %7154, label %.invoke2324

7154:                                             ; preds = %7152
  %7155 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %11)
  %7156 = icmp eq i64 %7155, 0
  br i1 %7156, label %.invoke2324, label %7157

7157:                                             ; preds = %7154
  %7158 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %27, ptr noundef nonnull align 8 dereferenceable(24) %27)
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7159 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7159:                                             ; preds = %7157
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %698) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %699) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %699, i32 noundef 24)
          to label %7160 unwind label %7186

7160:                                             ; preds = %7159
  %7161 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %699)
          to label %7162 unwind label %7188

7162:                                             ; preds = %7160
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %698, ptr noundef nonnull align 1 dereferenceable(1) %7161)
          to label %7163 unwind label %7188

7163:                                             ; preds = %7162
  %7164 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %698)
          to label %7165 unwind label %7190

7165:                                             ; preds = %7163
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %698) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %699) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %699) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %698) #6
  %7166 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 0)
          to label %7167 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7167:                                             ; preds = %7165
  %7168 = invoke noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24) %7166)
          to label %7169 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7169:                                             ; preds = %7167
  %.not609 = icmp eq i64 %7168, 0
  br i1 %.not609, label %7199, label %7170

7170:                                             ; preds = %7169
  %7171 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %6, i32 noundef 128)
          to label %7172 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7172:                                             ; preds = %7170
  %7173 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %7, i32 noundef 32)
          to label %7174 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7174:                                             ; preds = %7172
  %7175 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 2)
          to label %7176 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7176:                                             ; preds = %7174
  %7177 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 272)
          to label %7178 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7178:                                             ; preds = %7176
  %7179 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 64)
          to label %7180 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7180:                                             ; preds = %7178
  %7181 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 10)
          to label %7182 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7182:                                             ; preds = %7180
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %700) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %700, i32 noundef 8)
          to label %7183 unwind label %7194

7183:                                             ; preds = %7182
  %7184 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %700)
          to label %7185 unwind label %7196

7185:                                             ; preds = %7183
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %700) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %700) #6
  br label %7220

7186:                                             ; preds = %7159
  %7187 = landingpad { ptr, i32 }
          cleanup
  br label %7193

7188:                                             ; preds = %7162, %7160
  %7189 = landingpad { ptr, i32 }
          cleanup
  br label %7192

7190:                                             ; preds = %7163
  %7191 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %698) #6
  br label %7192

7192:                                             ; preds = %7190, %7188
  %.pn606 = phi { ptr, i32 } [ %7191, %7190 ], [ %7189, %7188 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %699) #6
  br label %7193

7193:                                             ; preds = %7192, %7186
  %.pn606.pn = phi { ptr, i32 } [ %.pn606, %7192 ], [ %7187, %7186 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %699) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %698) #6
  br label %.loopexit.split-lp

7194:                                             ; preds = %7182
  %7195 = landingpad { ptr, i32 }
          cleanup
  br label %7198

7196:                                             ; preds = %7183
  %7197 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %700) #6
  br label %7198

7198:                                             ; preds = %7196, %7194
  %.pn612 = phi { ptr, i32 } [ %7197, %7196 ], [ %7195, %7194 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %700) #6
  br label %.loopexit.split-lp

7199:                                             ; preds = %7169
  %7200 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %6, i32 noundef 160)
          to label %7201 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7201:                                             ; preds = %7199
  %7202 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %7, i32 noundef 48)
          to label %7203 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7203:                                             ; preds = %7201
  %7204 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %8, i32 noundef 4)
          to label %7205 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7205:                                             ; preds = %7203
  %7206 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %9, i32 noundef 288)
          to label %7207 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7207:                                             ; preds = %7205
  %7208 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %5, i32 noundef 96)
          to label %7209 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7209:                                             ; preds = %7207
  %7210 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %11, i32 noundef 11)
          to label %7211 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7211:                                             ; preds = %7209
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %701) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %701, i32 noundef 16)
          to label %7212 unwind label %7215

7212:                                             ; preds = %7211
  %7213 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %701)
          to label %7214 unwind label %7217

7214:                                             ; preds = %7212
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %701) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %701) #6
  br label %7220

7215:                                             ; preds = %7211
  %7216 = landingpad { ptr, i32 }
          cleanup
  br label %7219

7217:                                             ; preds = %7212
  %7218 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %701) #6
  br label %7219

7219:                                             ; preds = %7217, %7215
  %.pn610 = phi { ptr, i32 } [ %7218, %7217 ], [ %7216, %7215 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %701) #6
  br label %.loopexit.split-lp

7220:                                             ; preds = %7214, %7185
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %702) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %702, i32 noundef 3)
          to label %7221 unwind label %7236

7221:                                             ; preds = %7220
  %7222 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %702)
          to label %7223 unwind label %7238

7223:                                             ; preds = %7221
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %702) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %702) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %703) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %703, i32 noundef 3)
          to label %7224 unwind label %7241

7224:                                             ; preds = %7223
  %7225 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %703)
          to label %7226 unwind label %7243

7226:                                             ; preds = %7224
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %703) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %703) #6
  %7227 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7228 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7228:                                             ; preds = %7226
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %704) #6
  store i8 1, ptr %704, align 1, !tbaa !5
  %7229 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %704)
          to label %7230 unwind label %7246

7230:                                             ; preds = %7228
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %704) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1907 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1907:                                   ; preds = %7230, %7235
  %7231 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %7232 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1909

7232:                                             ; preds = %.preheader1907
  %7233 = load i8, ptr %7231, align 1, !tbaa !5, !range !9, !noundef !10
  %7234 = trunc nuw i8 %7233 to i1
  br i1 %7234, label %7248, label %7235

7235:                                             ; preds = %7232
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1907 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1909, !llvm.loop !144

7236:                                             ; preds = %7220
  %7237 = landingpad { ptr, i32 }
          cleanup
  br label %7240

7238:                                             ; preds = %7221
  %7239 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %702) #6
  br label %7240

7240:                                             ; preds = %7238, %7236
  %.pn614 = phi { ptr, i32 } [ %7239, %7238 ], [ %7237, %7236 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %702) #6
  br label %.loopexit.split-lp

7241:                                             ; preds = %7223
  %7242 = landingpad { ptr, i32 }
          cleanup
  br label %7245

7243:                                             ; preds = %7224
  %7244 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %703) #6
  br label %7245

7245:                                             ; preds = %7243, %7241
  %.pn616 = phi { ptr, i32 } [ %7244, %7243 ], [ %7242, %7241 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %703) #6
  br label %.loopexit.split-lp

7246:                                             ; preds = %7228
  %7247 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %704) #6
  br label %.loopexit.split-lp

7248:                                             ; preds = %7232
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7249 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7249:                                             ; preds = %7248
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %705) #6
  store i8 0, ptr %705, align 1, !tbaa !5
  %7250 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %705)
          to label %7251 unwind label %7276

7251:                                             ; preds = %7249
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %705) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7252 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7252:                                             ; preds = %7251
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %706) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %707) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %707, i32 noundef 27)
          to label %7253 unwind label %7278

7253:                                             ; preds = %7252
  %7254 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %707)
          to label %7255 unwind label %7280

7255:                                             ; preds = %7253
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %706, ptr noundef nonnull align 1 dereferenceable(1) %7254)
          to label %7256 unwind label %7280

7256:                                             ; preds = %7255
  %7257 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %706)
          to label %7258 unwind label %7282

7258:                                             ; preds = %7256
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %706) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %707) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %707) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %706) #6
  %7259 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %5)
          to label %7260 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7260:                                             ; preds = %7258
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %708) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %708, i32 noundef 32)
          to label %7261 unwind label %7286

7261:                                             ; preds = %7260
  %7262 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %708)
          to label %7263 unwind label %7288

7263:                                             ; preds = %7261
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %708) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %708) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %709) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %709, i32 noundef 3)
          to label %7264 unwind label %7291

7264:                                             ; preds = %7263
  %7265 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %709)
          to label %7266 unwind label %7293

7266:                                             ; preds = %7264
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %709) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %709) #6
  %7267 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7268 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7268:                                             ; preds = %7266
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %710) #6
  store i8 1, ptr %710, align 1, !tbaa !5
  %7269 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %710)
          to label %7270 unwind label %7296

7270:                                             ; preds = %7268
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %710) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1900 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1900:                                   ; preds = %7270, %7275
  %7271 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %7272 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1902

7272:                                             ; preds = %.preheader1900
  %7273 = load i8, ptr %7271, align 1, !tbaa !5, !range !9, !noundef !10
  %7274 = trunc nuw i8 %7273 to i1
  br i1 %7274, label %7298, label %7275

7275:                                             ; preds = %7272
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1900 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1902, !llvm.loop !145

7276:                                             ; preds = %7249
  %7277 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %705) #6
  br label %.loopexit.split-lp

7278:                                             ; preds = %7252
  %7279 = landingpad { ptr, i32 }
          cleanup
  br label %7285

7280:                                             ; preds = %7255, %7253
  %7281 = landingpad { ptr, i32 }
          cleanup
  br label %7284

7282:                                             ; preds = %7256
  %7283 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %706) #6
  br label %7284

7284:                                             ; preds = %7282, %7280
  %.pn618 = phi { ptr, i32 } [ %7283, %7282 ], [ %7281, %7280 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %707) #6
  br label %7285

7285:                                             ; preds = %7284, %7278
  %.pn618.pn = phi { ptr, i32 } [ %.pn618, %7284 ], [ %7279, %7278 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %707) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %706) #6
  br label %.loopexit.split-lp

7286:                                             ; preds = %7260
  %7287 = landingpad { ptr, i32 }
          cleanup
  br label %7290

7288:                                             ; preds = %7261
  %7289 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %708) #6
  br label %7290

7290:                                             ; preds = %7288, %7286
  %.pn621 = phi { ptr, i32 } [ %7289, %7288 ], [ %7287, %7286 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %708) #6
  br label %.loopexit.split-lp

7291:                                             ; preds = %7263
  %7292 = landingpad { ptr, i32 }
          cleanup
  br label %7295

7293:                                             ; preds = %7264
  %7294 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %709) #6
  br label %7295

7295:                                             ; preds = %7293, %7291
  %.pn623 = phi { ptr, i32 } [ %7294, %7293 ], [ %7292, %7291 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %709) #6
  br label %.loopexit.split-lp

7296:                                             ; preds = %7268
  %7297 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %710) #6
  br label %.loopexit.split-lp

7298:                                             ; preds = %7272
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7299 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7299:                                             ; preds = %7298
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %711) #6
  store i8 0, ptr %711, align 1, !tbaa !5
  %7300 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %711)
          to label %7301 unwind label %7323

7301:                                             ; preds = %7299
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %711) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7302 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7302:                                             ; preds = %7301
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %712) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %713) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %713, i32 noundef 59)
          to label %7303 unwind label %7325

7303:                                             ; preds = %7302
  %7304 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %713)
          to label %7305 unwind label %7327

7305:                                             ; preds = %7303
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %712, ptr noundef nonnull align 1 dereferenceable(1) %7304)
          to label %7306 unwind label %7327

7306:                                             ; preds = %7305
  %7307 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %712)
          to label %7308 unwind label %7329

7308:                                             ; preds = %7306
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %712) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %713) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %713) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %712) #6
  %7309 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %6)
          to label %7310 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7310:                                             ; preds = %7308
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %714) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %714, i32 noundef 3)
          to label %7311 unwind label %7333

7311:                                             ; preds = %7310
  %7312 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %714)
          to label %7313 unwind label %7335

7313:                                             ; preds = %7311
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %714) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %714) #6
  %7314 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7315 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7315:                                             ; preds = %7313
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %715) #6
  store i8 1, ptr %715, align 1, !tbaa !5
  %7316 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %715)
          to label %7317 unwind label %7338

7317:                                             ; preds = %7315
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %715) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1892 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1892:                                   ; preds = %7317, %7322
  %7318 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %7319 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1894

7319:                                             ; preds = %.preheader1892
  %7320 = load i8, ptr %7318, align 1, !tbaa !5, !range !9, !noundef !10
  %7321 = trunc nuw i8 %7320 to i1
  br i1 %7321, label %7340, label %7322

7322:                                             ; preds = %7319
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1892 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1894, !llvm.loop !146

7323:                                             ; preds = %7299
  %7324 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %711) #6
  br label %.loopexit.split-lp

7325:                                             ; preds = %7302
  %7326 = landingpad { ptr, i32 }
          cleanup
  br label %7332

7327:                                             ; preds = %7305, %7303
  %7328 = landingpad { ptr, i32 }
          cleanup
  br label %7331

7329:                                             ; preds = %7306
  %7330 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %712) #6
  br label %7331

7331:                                             ; preds = %7329, %7327
  %.pn625 = phi { ptr, i32 } [ %7330, %7329 ], [ %7328, %7327 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %713) #6
  br label %7332

7332:                                             ; preds = %7331, %7325
  %.pn625.pn = phi { ptr, i32 } [ %.pn625, %7331 ], [ %7326, %7325 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %713) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %712) #6
  br label %.loopexit.split-lp

7333:                                             ; preds = %7310
  %7334 = landingpad { ptr, i32 }
          cleanup
  br label %7337

7335:                                             ; preds = %7311
  %7336 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %714) #6
  br label %7337

7337:                                             ; preds = %7335, %7333
  %.pn628 = phi { ptr, i32 } [ %7336, %7335 ], [ %7334, %7333 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %714) #6
  br label %.loopexit.split-lp

7338:                                             ; preds = %7315
  %7339 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %715) #6
  br label %.loopexit.split-lp

7340:                                             ; preds = %7319
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7341 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7341:                                             ; preds = %7340
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %716) #6
  store i8 0, ptr %716, align 1, !tbaa !5
  %7342 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %716)
          to label %7343 unwind label %7363

7343:                                             ; preds = %7341
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %716) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7344 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7344:                                             ; preds = %7343
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %717) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %718) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %718, i32 noundef -37)
          to label %7345 unwind label %7365

7345:                                             ; preds = %7344
  %7346 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %718)
          to label %7347 unwind label %7367

7347:                                             ; preds = %7345
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %717, ptr noundef nonnull align 1 dereferenceable(1) %7346)
          to label %7348 unwind label %7367

7348:                                             ; preds = %7347
  %7349 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %717)
          to label %7350 unwind label %7369

7350:                                             ; preds = %7348
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %717) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %718) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %718) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %717) #6
  %7351 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %7)
          to label %7352 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7352:                                             ; preds = %7350
  %7353 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1761)
          to label %7354 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7354:                                             ; preds = %7352
  %7355 = load i8, ptr %7353, align 1, !tbaa !5, !range !9, !noundef !10
  %7356 = trunc nuw i8 %7355 to i1
  br i1 %7356, label %7378, label %7357

7357:                                             ; preds = %7354
  %7358 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %6, i32 noundef -3743)
          to label %7359 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7359:                                             ; preds = %7357
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %719) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %719, i32 noundef 6)
          to label %7360 unwind label %7373

7360:                                             ; preds = %7359
  %7361 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %719)
          to label %7362 unwind label %7375

7362:                                             ; preds = %7360
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %719) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %719) #6
  br label %7389

7363:                                             ; preds = %7341
  %7364 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %716) #6
  br label %.loopexit.split-lp

7365:                                             ; preds = %7344
  %7366 = landingpad { ptr, i32 }
          cleanup
  br label %7372

7367:                                             ; preds = %7347, %7345
  %7368 = landingpad { ptr, i32 }
          cleanup
  br label %7371

7369:                                             ; preds = %7348
  %7370 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %717) #6
  br label %7371

7371:                                             ; preds = %7369, %7367
  %.pn630 = phi { ptr, i32 } [ %7370, %7369 ], [ %7368, %7367 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %718) #6
  br label %7372

7372:                                             ; preds = %7371, %7365
  %.pn630.pn = phi { ptr, i32 } [ %.pn630, %7371 ], [ %7366, %7365 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %718) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %717) #6
  br label %.loopexit.split-lp

7373:                                             ; preds = %7359
  %7374 = landingpad { ptr, i32 }
          cleanup
  br label %7377

7375:                                             ; preds = %7360
  %7376 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %719) #6
  br label %7377

7377:                                             ; preds = %7375, %7373
  %.pn633 = phi { ptr, i32 } [ %7376, %7375 ], [ %7374, %7373 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %719) #6
  br label %.loopexit.split-lp

7378:                                             ; preds = %7354
  %7379 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %6, i32 noundef -4001)
          to label %7380 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7380:                                             ; preds = %7378
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %720) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %720, i32 noundef 4)
          to label %7381 unwind label %7384

7381:                                             ; preds = %7380
  %7382 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %720)
          to label %7383 unwind label %7386

7383:                                             ; preds = %7381
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %720) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %720) #6
  br label %7389

7384:                                             ; preds = %7380
  %7385 = landingpad { ptr, i32 }
          cleanup
  br label %7388

7386:                                             ; preds = %7381
  %7387 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %720) #6
  br label %7388

7388:                                             ; preds = %7386, %7384
  %.pn635 = phi { ptr, i32 } [ %7387, %7386 ], [ %7385, %7384 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %720) #6
  br label %.loopexit.split-lp

7389:                                             ; preds = %7383, %7362
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %721) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %721, i32 noundef 3)
          to label %7390 unwind label %7402

7390:                                             ; preds = %7389
  %7391 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %721)
          to label %7392 unwind label %7404

7392:                                             ; preds = %7390
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %721) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %721) #6
  %7393 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7394 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7394:                                             ; preds = %7392
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %722) #6
  store i8 1, ptr %722, align 1, !tbaa !5
  %7395 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %722)
          to label %7396 unwind label %7407

7396:                                             ; preds = %7394
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %722) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1885 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1885:                                   ; preds = %7396, %7401
  %7397 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %7398 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1887

7398:                                             ; preds = %.preheader1885
  %7399 = load i8, ptr %7397, align 1, !tbaa !5, !range !9, !noundef !10
  %7400 = trunc nuw i8 %7399 to i1
  br i1 %7400, label %7409, label %7401

7401:                                             ; preds = %7398
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1885 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1887, !llvm.loop !147

7402:                                             ; preds = %7389
  %7403 = landingpad { ptr, i32 }
          cleanup
  br label %7406

7404:                                             ; preds = %7390
  %7405 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %721) #6
  br label %7406

7406:                                             ; preds = %7404, %7402
  %.pn637 = phi { ptr, i32 } [ %7405, %7404 ], [ %7403, %7402 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %721) #6
  br label %.loopexit.split-lp

7407:                                             ; preds = %7394
  %7408 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %722) #6
  br label %.loopexit.split-lp

7409:                                             ; preds = %7398
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7410 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7410:                                             ; preds = %7409
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %723) #6
  store i8 0, ptr %723, align 1, !tbaa !5
  %7411 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %723)
          to label %7412 unwind label %7440

7412:                                             ; preds = %7410
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %723) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7413 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7413:                                             ; preds = %7412
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %724) #6
  %7414 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %23, i32 noundef 6, i32 noundef 0)
          to label %7415 unwind label %7442

7415:                                             ; preds = %7413
  %7416 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %6, i32 noundef 6, i32 noundef 0)
          to label %7417 unwind label %7442

7417:                                             ; preds = %7415
  %7418 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %7414, ptr noundef nonnull align 8 dereferenceable(8) %7416)
          to label %7419 unwind label %7442

7419:                                             ; preds = %7417
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %724, ptr noundef nonnull align 1 dereferenceable(1) %7418)
          to label %7420 unwind label %7442

7420:                                             ; preds = %7419
  %7421 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %724)
          to label %7422 unwind label %7444

7422:                                             ; preds = %7420
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %724) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %724) #6
  %7423 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %8)
          to label %7424 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7424:                                             ; preds = %7422
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %725) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %725, i32 noundef 1)
          to label %7425 unwind label %7447

7425:                                             ; preds = %7424
  %7426 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %725)
          to label %7427 unwind label %7449

7427:                                             ; preds = %7425
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %725) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %725) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %726) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %726, i32 noundef 3)
          to label %7428 unwind label %7452

7428:                                             ; preds = %7427
  %7429 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %726)
          to label %7430 unwind label %7454

7430:                                             ; preds = %7428
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %726) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %726) #6
  %7431 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7432 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7432:                                             ; preds = %7430
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %727) #6
  store i8 1, ptr %727, align 1, !tbaa !5
  %7433 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %727)
          to label %7434 unwind label %7457

7434:                                             ; preds = %7432
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %727) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1877 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1877:                                   ; preds = %7434, %7439
  %7435 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %7436 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1879

7436:                                             ; preds = %.preheader1877
  %7437 = load i8, ptr %7435, align 1, !tbaa !5, !range !9, !noundef !10
  %7438 = trunc nuw i8 %7437 to i1
  br i1 %7438, label %7459, label %7439

7439:                                             ; preds = %7436
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1877 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1879, !llvm.loop !148

7440:                                             ; preds = %7410
  %7441 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %723) #6
  br label %.loopexit.split-lp

7442:                                             ; preds = %7419, %7417, %7415, %7413
  %7443 = landingpad { ptr, i32 }
          cleanup
  br label %7446

7444:                                             ; preds = %7420
  %7445 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %724) #6
  br label %7446

7446:                                             ; preds = %7444, %7442
  %.pn639 = phi { ptr, i32 } [ %7445, %7444 ], [ %7443, %7442 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %724) #6
  br label %.loopexit.split-lp

7447:                                             ; preds = %7424
  %7448 = landingpad { ptr, i32 }
          cleanup
  br label %7451

7449:                                             ; preds = %7425
  %7450 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %725) #6
  br label %7451

7451:                                             ; preds = %7449, %7447
  %.pn641 = phi { ptr, i32 } [ %7450, %7449 ], [ %7448, %7447 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %725) #6
  br label %.loopexit.split-lp

7452:                                             ; preds = %7427
  %7453 = landingpad { ptr, i32 }
          cleanup
  br label %7456

7454:                                             ; preds = %7428
  %7455 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %726) #6
  br label %7456

7456:                                             ; preds = %7454, %7452
  %.pn643 = phi { ptr, i32 } [ %7455, %7454 ], [ %7453, %7452 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %726) #6
  br label %.loopexit.split-lp

7457:                                             ; preds = %7432
  %7458 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %727) #6
  br label %.loopexit.split-lp

7459:                                             ; preds = %7436
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7460 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7460:                                             ; preds = %7459
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %728) #6
  store i8 0, ptr %728, align 1, !tbaa !5
  %7461 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %728)
          to label %7462 unwind label %7491

7462:                                             ; preds = %7460
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %728) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7463 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7463:                                             ; preds = %7462
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %729) #6
  %7464 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %23, i32 noundef 6, i32 noundef 0)
          to label %7465 unwind label %7493

7465:                                             ; preds = %7463
  %7466 = invoke noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24) %6, i32 noundef 13, i32 noundef 7)
          to label %7467 unwind label %7493

7467:                                             ; preds = %7465
  %7468 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8) %7464, ptr noundef nonnull align 8 dereferenceable(8) %7466)
          to label %7469 unwind label %7493

7469:                                             ; preds = %7467
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %729, ptr noundef nonnull align 1 dereferenceable(1) %7468)
          to label %7470 unwind label %7493

7470:                                             ; preds = %7469
  %7471 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %729)
          to label %7472 unwind label %7495

7472:                                             ; preds = %7470
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %729) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %729) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %730) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %730, i32 noundef 20)
          to label %7473 unwind label %7498

7473:                                             ; preds = %7472
  %7474 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %730)
          to label %7475 unwind label %7500

7475:                                             ; preds = %7473
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %730) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %730) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %731) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %731, i32 noundef 4)
          to label %7476 unwind label %7503

7476:                                             ; preds = %7475
  %7477 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %731)
          to label %7478 unwind label %7505

7478:                                             ; preds = %7476
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %731) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %731) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %732) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %732, i32 noundef 3)
          to label %7479 unwind label %7508

7479:                                             ; preds = %7478
  %7480 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %732)
          to label %7481 unwind label %7510

7481:                                             ; preds = %7479
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %732) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %732) #6
  %7482 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7483 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7483:                                             ; preds = %7481
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %733) #6
  store i8 1, ptr %733, align 1, !tbaa !5
  %7484 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %733)
          to label %7485 unwind label %7513

7485:                                             ; preds = %7483
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %733) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1870 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1870:                                   ; preds = %7485, %7490
  %7486 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %7487 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1872

7487:                                             ; preds = %.preheader1870
  %7488 = load i8, ptr %7486, align 1, !tbaa !5, !range !9, !noundef !10
  %7489 = trunc nuw i8 %7488 to i1
  br i1 %7489, label %7515, label %7490

7490:                                             ; preds = %7487
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1870 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1872, !llvm.loop !149

7491:                                             ; preds = %7460
  %7492 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %728) #6
  br label %.loopexit.split-lp

7493:                                             ; preds = %7469, %7467, %7465, %7463
  %7494 = landingpad { ptr, i32 }
          cleanup
  br label %7497

7495:                                             ; preds = %7470
  %7496 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %729) #6
  br label %7497

7497:                                             ; preds = %7495, %7493
  %.pn645 = phi { ptr, i32 } [ %7496, %7495 ], [ %7494, %7493 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %729) #6
  br label %.loopexit.split-lp

7498:                                             ; preds = %7472
  %7499 = landingpad { ptr, i32 }
          cleanup
  br label %7502

7500:                                             ; preds = %7473
  %7501 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %730) #6
  br label %7502

7502:                                             ; preds = %7500, %7498
  %.pn647 = phi { ptr, i32 } [ %7501, %7500 ], [ %7499, %7498 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %730) #6
  br label %.loopexit.split-lp

7503:                                             ; preds = %7475
  %7504 = landingpad { ptr, i32 }
          cleanup
  br label %7507

7505:                                             ; preds = %7476
  %7506 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %731) #6
  br label %7507

7507:                                             ; preds = %7505, %7503
  %.pn649 = phi { ptr, i32 } [ %7506, %7505 ], [ %7504, %7503 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %731) #6
  br label %.loopexit.split-lp

7508:                                             ; preds = %7478
  %7509 = landingpad { ptr, i32 }
          cleanup
  br label %7512

7510:                                             ; preds = %7479
  %7511 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %732) #6
  br label %7512

7512:                                             ; preds = %7510, %7508
  %.pn651 = phi { ptr, i32 } [ %7511, %7510 ], [ %7509, %7508 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %732) #6
  br label %.loopexit.split-lp

7513:                                             ; preds = %7483
  %7514 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %733) #6
  br label %.loopexit.split-lp

7515:                                             ; preds = %7487
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7516 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7516:                                             ; preds = %7515
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %734) #6
  store i8 0, ptr %734, align 1, !tbaa !5
  %7517 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %734)
          to label %7518 unwind label %7548

7518:                                             ; preds = %7516
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %734) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7519 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7519:                                             ; preds = %7518
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %735) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %736) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %736, i32 noundef 0)
          to label %7520 unwind label %7550

7520:                                             ; preds = %7519
  %7521 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %736)
          to label %7522 unwind label %7552

7522:                                             ; preds = %7520
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %735, ptr noundef nonnull align 1 dereferenceable(1) %7521)
          to label %7523 unwind label %7552

7523:                                             ; preds = %7522
  %7524 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %735)
          to label %7525 unwind label %7554

7525:                                             ; preds = %7523
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %735) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %736) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %736) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %735) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %737) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %737, i32 noundef 0)
          to label %7526 unwind label %7558

7526:                                             ; preds = %7525
  %7527 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %737)
          to label %7528 unwind label %7560

7528:                                             ; preds = %7526
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %737) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %737) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %738) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %739) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %739, i32 noundef 0)
          to label %7529 unwind label %7563

7529:                                             ; preds = %7528
  %7530 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %739, ptr noundef nonnull align 8 dereferenceable(8) %11)
          to label %7531 unwind label %7565

7531:                                             ; preds = %7529
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %740) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %740, i32 noundef 0)
          to label %7532 unwind label %7567

7532:                                             ; preds = %7531
  %7533 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %7530, ptr noundef nonnull align 8 dereferenceable(8) %740)
          to label %7534 unwind label %7569

7534:                                             ; preds = %7532
  invoke void @_ZN5sc_dt6sc_intILi7EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %738, ptr noundef nonnull align 1 dereferenceable(1) %7533)
          to label %7535 unwind label %7569

7535:                                             ; preds = %7534
  %7536 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %738)
          to label %7537 unwind label %7571

7537:                                             ; preds = %7535
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %738) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %740) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %740) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %739) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %739) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %738) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %741) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %741, i32 noundef -3)
          to label %7538 unwind label %7577

7538:                                             ; preds = %7537
  %7539 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %741)
          to label %7540 unwind label %7579

7540:                                             ; preds = %7538
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %741) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %741) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %742) #6
  store i8 1, ptr %742, align 1, !tbaa !5
  %7541 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %742)
          to label %7542 unwind label %7582

7542:                                             ; preds = %7540
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %742) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1862 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1862:                                   ; preds = %7542, %7547
  %7543 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %7544 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1864

7544:                                             ; preds = %.preheader1862
  %7545 = load i8, ptr %7543, align 1, !tbaa !5, !range !9, !noundef !10
  %7546 = trunc nuw i8 %7545 to i1
  br i1 %7546, label %7584, label %7547

7547:                                             ; preds = %7544
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1862 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1864, !llvm.loop !150

7548:                                             ; preds = %7516
  %7549 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %734) #6
  br label %.loopexit.split-lp

7550:                                             ; preds = %7519
  %7551 = landingpad { ptr, i32 }
          cleanup
  br label %7557

7552:                                             ; preds = %7522, %7520
  %7553 = landingpad { ptr, i32 }
          cleanup
  br label %7556

7554:                                             ; preds = %7523
  %7555 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %735) #6
  br label %7556

7556:                                             ; preds = %7554, %7552
  %.pn653 = phi { ptr, i32 } [ %7555, %7554 ], [ %7553, %7552 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %736) #6
  br label %7557

7557:                                             ; preds = %7556, %7550
  %.pn653.pn = phi { ptr, i32 } [ %.pn653, %7556 ], [ %7551, %7550 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %736) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %735) #6
  br label %.loopexit.split-lp

7558:                                             ; preds = %7525
  %7559 = landingpad { ptr, i32 }
          cleanup
  br label %7562

7560:                                             ; preds = %7526
  %7561 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %737) #6
  br label %7562

7562:                                             ; preds = %7560, %7558
  %.pn656 = phi { ptr, i32 } [ %7561, %7560 ], [ %7559, %7558 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %737) #6
  br label %.loopexit.split-lp

7563:                                             ; preds = %7528
  %7564 = landingpad { ptr, i32 }
          cleanup
  br label %7576

7565:                                             ; preds = %7529
  %7566 = landingpad { ptr, i32 }
          cleanup
  br label %7575

7567:                                             ; preds = %7531
  %7568 = landingpad { ptr, i32 }
          cleanup
  br label %7574

7569:                                             ; preds = %7534, %7532
  %7570 = landingpad { ptr, i32 }
          cleanup
  br label %7573

7571:                                             ; preds = %7535
  %7572 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %738) #6
  br label %7573

7573:                                             ; preds = %7571, %7569
  %.pn658 = phi { ptr, i32 } [ %7572, %7571 ], [ %7570, %7569 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %740) #6
  br label %7574

7574:                                             ; preds = %7573, %7567
  %.pn658.pn = phi { ptr, i32 } [ %.pn658, %7573 ], [ %7568, %7567 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %740) #6
  br label %7575

7575:                                             ; preds = %7574, %7565
  %.pn658.pn.pn = phi { ptr, i32 } [ %.pn658.pn, %7574 ], [ %7566, %7565 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %739) #6
  br label %7576

7576:                                             ; preds = %7575, %7563
  %.pn658.pn.pn.pn = phi { ptr, i32 } [ %.pn658.pn.pn, %7575 ], [ %7564, %7563 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %739) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %738) #6
  br label %.loopexit.split-lp

7577:                                             ; preds = %7537
  %7578 = landingpad { ptr, i32 }
          cleanup
  br label %7581

7579:                                             ; preds = %7538
  %7580 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %741) #6
  br label %7581

7581:                                             ; preds = %7579, %7577
  %.pn663 = phi { ptr, i32 } [ %7580, %7579 ], [ %7578, %7577 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %741) #6
  br label %.loopexit.split-lp

7582:                                             ; preds = %7540
  %7583 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %742) #6
  br label %.loopexit.split-lp

7584:                                             ; preds = %7544
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7585 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7585:                                             ; preds = %7584
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %743) #6
  store i8 0, ptr %743, align 1, !tbaa !5
  %7586 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %743)
          to label %7587 unwind label %7607

7587:                                             ; preds = %7585
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %743) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7588 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7588:                                             ; preds = %7587
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %744) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %744, i32 noundef 768)
          to label %7589 unwind label %7609

7589:                                             ; preds = %7588
  %7590 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %744)
          to label %7591 unwind label %7611

7591:                                             ; preds = %7589
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %744) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %744) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %745) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %745, i32 noundef 0)
          to label %7592 unwind label %7614

7592:                                             ; preds = %7591
  %7593 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %745)
          to label %7594 unwind label %7616

7594:                                             ; preds = %7592
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %745) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %745) #6
  %7595 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1760, ptr noundef nonnull align 8 dereferenceable(24) %23)
          to label %7596 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7596:                                             ; preds = %7594
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %746) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %746, i32 noundef -2)
          to label %7597 unwind label %7619

7597:                                             ; preds = %7596
  %7598 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %746)
          to label %7599 unwind label %7621

7599:                                             ; preds = %7597
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %746) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %746) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %747) #6
  store i8 1, ptr %747, align 1, !tbaa !5
  %7600 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %747)
          to label %7601 unwind label %7624

7601:                                             ; preds = %7599
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %747) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1855 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1855:                                   ; preds = %7601, %7606
  %7602 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %7603 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1857

7603:                                             ; preds = %.preheader1855
  %7604 = load i8, ptr %7602, align 1, !tbaa !5, !range !9, !noundef !10
  %7605 = trunc nuw i8 %7604 to i1
  br i1 %7605, label %7626, label %7606

7606:                                             ; preds = %7603
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1855 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1857, !llvm.loop !151

7607:                                             ; preds = %7585
  %7608 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %743) #6
  br label %.loopexit.split-lp

7609:                                             ; preds = %7588
  %7610 = landingpad { ptr, i32 }
          cleanup
  br label %7613

7611:                                             ; preds = %7589
  %7612 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %744) #6
  br label %7613

7613:                                             ; preds = %7611, %7609
  %.pn665 = phi { ptr, i32 } [ %7612, %7611 ], [ %7610, %7609 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %744) #6
  br label %.loopexit.split-lp

7614:                                             ; preds = %7591
  %7615 = landingpad { ptr, i32 }
          cleanup
  br label %7618

7616:                                             ; preds = %7592
  %7617 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %745) #6
  br label %7618

7618:                                             ; preds = %7616, %7614
  %.pn667 = phi { ptr, i32 } [ %7617, %7616 ], [ %7615, %7614 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %745) #6
  br label %.loopexit.split-lp

7619:                                             ; preds = %7596
  %7620 = landingpad { ptr, i32 }
          cleanup
  br label %7623

7621:                                             ; preds = %7597
  %7622 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %746) #6
  br label %7623

7623:                                             ; preds = %7621, %7619
  %.pn669 = phi { ptr, i32 } [ %7622, %7621 ], [ %7620, %7619 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %746) #6
  br label %.loopexit.split-lp

7624:                                             ; preds = %7599
  %7625 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %747) #6
  br label %.loopexit.split-lp

7626:                                             ; preds = %7603
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7627 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7627:                                             ; preds = %7626
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %748) #6
  store i8 0, ptr %748, align 1, !tbaa !5
  %7628 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %748)
          to label %7629 unwind label %7651

7629:                                             ; preds = %7627
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %748) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7630 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7630:                                             ; preds = %7629
  %7631 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1752, ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %7632 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7632:                                             ; preds = %7630
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %749) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %750) #6
  invoke void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %750, i32 noundef 0)
          to label %7633 unwind label %7653

7633:                                             ; preds = %7632
  %7634 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull align 8 dereferenceable(8) %750)
          to label %7635 unwind label %7655

7635:                                             ; preds = %7633
  invoke void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %749, ptr noundef nonnull align 1 dereferenceable(1) %7634)
          to label %7636 unwind label %7655

7636:                                             ; preds = %7635
  %7637 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1759, ptr noundef nonnull align 8 dereferenceable(24) %749)
          to label %7638 unwind label %7657

7638:                                             ; preds = %7636
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %749) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %750) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %750) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %749) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %751) #6
  invoke void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %751, i32 noundef 1)
          to label %7639 unwind label %7661

7639:                                             ; preds = %7638
  %7640 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1753, ptr noundef nonnull align 8 dereferenceable(24) %751)
          to label %7641 unwind label %7663

7641:                                             ; preds = %7639
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %751) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %751) #6
  %7642 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1754, ptr noundef nonnull align 8 dereferenceable(24) %26)
          to label %7643 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7643:                                             ; preds = %7641
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %752) #6
  store i8 1, ptr %752, align 1, !tbaa !5
  %7644 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %752)
          to label %7645 unwind label %7666

7645:                                             ; preds = %7643
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %752) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1847 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1847:                                   ; preds = %7645, %7650
  %7646 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184) %1755)
          to label %7647 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1849

7647:                                             ; preds = %.preheader1847
  %7648 = load i8, ptr %7646, align 1, !tbaa !5, !range !9, !noundef !10
  %7649 = trunc nuw i8 %7648 to i1
  br i1 %7649, label %7668, label %7650

7650:                                             ; preds = %7647
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1847 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1849, !llvm.loop !152

7651:                                             ; preds = %7627
  %7652 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %748) #6
  br label %.loopexit.split-lp

7653:                                             ; preds = %7632
  %7654 = landingpad { ptr, i32 }
          cleanup
  br label %7660

7655:                                             ; preds = %7635, %7633
  %7656 = landingpad { ptr, i32 }
          cleanup
  br label %7659

7657:                                             ; preds = %7636
  %7658 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %749) #6
  br label %7659

7659:                                             ; preds = %7657, %7655
  %.pn671 = phi { ptr, i32 } [ %7658, %7657 ], [ %7656, %7655 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %750) #6
  br label %7660

7660:                                             ; preds = %7659, %7653
  %.pn671.pn = phi { ptr, i32 } [ %.pn671, %7659 ], [ %7654, %7653 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %750) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %749) #6
  br label %.loopexit.split-lp

7661:                                             ; preds = %7638
  %7662 = landingpad { ptr, i32 }
          cleanup
  br label %7665

7663:                                             ; preds = %7639
  %7664 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %751) #6
  br label %7665

7665:                                             ; preds = %7663, %7661
  %.pn674 = phi { ptr, i32 } [ %7664, %7663 ], [ %7662, %7661 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %751) #6
  br label %.loopexit.split-lp

7666:                                             ; preds = %7643
  %7667 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %752) #6
  br label %.loopexit.split-lp

7668:                                             ; preds = %7647
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7669 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7669:                                             ; preds = %7668
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %753) #6
  store i8 0, ptr %753, align 1, !tbaa !5
  %7670 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %851, ptr noundef nonnull align 1 dereferenceable(1) %753)
          to label %7671 unwind label %7672

7671:                                             ; preds = %7669
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %753) #6
  br label %.invoke2304

.invoke2304:                                      ; preds = %2350, %2742, %5093, %7149, %7671
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.loopexit1302 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7672:                                             ; preds = %7669
  %7673 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %753) #6
  br label %.loopexit.split-lp

.invoke2324:                                      ; preds = %2026, %7152, %7154, %6008, %6010, %5190, %5629, %5574, %5479, %5486, %5401, %5328, %5194, %5096, %5098, %3799, %3801, %3440, %3442, %2503, %2505, %2496, %2498, %2490, %2492, %2353, %2355, %2030, %2032
  %7674 = phi i32 [ 1, %2032 ], [ 1, %2030 ], [ 1, %2355 ], [ 1, %2353 ], [ 1, %2492 ], [ 1, %2490 ], [ 1, %2498 ], [ 1, %2496 ], [ 1, %2505 ], [ 1, %2503 ], [ 1, %3442 ], [ 1, %3440 ], [ 1, %3801 ], [ 1, %3799 ], [ 1, %5098 ], [ 1, %5096 ], [ 2, %5194 ], [ 2, %5328 ], [ 2, %5401 ], [ 2, %5486 ], [ 2, %5479 ], [ 2, %5574 ], [ 2, %5629 ], [ -3, %5190 ], [ 1, %6010 ], [ 1, %6008 ], [ 1, %7154 ], [ 1, %7152 ], [ 3, %2026 ]
  %7675 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %27, i32 noundef %7674)
          to label %.invoke2303 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.invoke2303:                                      ; preds = %5998, %2480, %.invoke2324, %5916, %4934, %2494, %2501, %5325, %5398, %5471, %5571, %5626, %5684
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.loopexit1302 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.loopexit1302:                                    ; preds = %.preheader1301, %.invoke2304, %.invoke2303, %3796, %1929
  %.3 = phi i1 [ true, %1929 ], [ %.1, %3796 ], [ true, %.invoke2303 ], [ false, %.invoke2304 ], [ false, %.preheader1301 ]
  %7676 = call noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24) %27)
  %.not1233 = icmp eq i64 %7676, 0
  br i1 %.not1233, label %.invoke2302, label %7677

7677:                                             ; preds = %.loopexit1302
  %7678 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %32, ptr noundef nonnull align 8 dereferenceable(24) %27)
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7679 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7679:                                             ; preds = %7677
  %7680 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24) %32, i32 noundef 0)
          to label %.invoke2302 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.invoke2302:                                      ; preds = %.loopexit1302, %7679
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %7681 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7681:                                             ; preds = %.invoke2302
  br i1 %.3, label %7682, label %.invoke

7682:                                             ; preds = %7681
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %754) #6
  invoke void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %754, i32 noundef 0)
          to label %7683 unwind label %7706

7683:                                             ; preds = %7682
  %7684 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %754, ptr noundef nonnull align 8 dereferenceable(8) %23)
          to label %7685 unwind label %7708

7685:                                             ; preds = %7683
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %755) #6
  invoke void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %755, i32 noundef 0)
          to label %7686 unwind label %7710

7686:                                             ; preds = %7685
  %7687 = invoke noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8) %7684, ptr noundef nonnull align 8 dereferenceable(8) %755)
          to label %7688 unwind label %7712

7688:                                             ; preds = %7686
  %7689 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24) %2, ptr noundef nonnull align 1 dereferenceable(1) %7687)
          to label %7690 unwind label %7712

7690:                                             ; preds = %7688
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %755) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %755) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %754) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %754) #6
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %756) #6
  invoke void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24) %756, i32 noundef -8192)
          to label %7691 unwind label %7717

7691:                                             ; preds = %7690
  %7692 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1553, ptr noundef nonnull align 8 dereferenceable(24) %756)
          to label %7693 unwind label %7719

7693:                                             ; preds = %7691
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %756) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %756) #6
  %7694 = invoke noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176) %1554, ptr noundef nonnull align 8 dereferenceable(24) %2)
          to label %7695 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

7695:                                             ; preds = %7693
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %757) #6
  store i8 0, ptr %757, align 1, !tbaa !5
  %7696 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %1555, ptr noundef nonnull align 1 dereferenceable(1) %757)
          to label %7697 unwind label %7722

7697:                                             ; preds = %7695
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %757) #6
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %758) #6
  store i8 1, ptr %758, align 1, !tbaa !5
  %7698 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %758)
          to label %7699 unwind label %7724

7699:                                             ; preds = %7697
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %758) #6
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1297 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939

.preheader1297:                                   ; preds = %7699, %7728
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %759) #6
  store i8 0, ptr %759, align 1, !tbaa !5
  %7700 = invoke noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192) %848, ptr noundef nonnull align 1 dereferenceable(1) %759)
          to label %7701 unwind label %7726

7701:                                             ; preds = %.preheader1297
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %759) #6
  %7702 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184) %1556)
          to label %7703 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

7703:                                             ; preds = %7701
  %7704 = load i8, ptr %7702, align 1, !tbaa !5, !range !9, !noundef !10
  %7705 = trunc nuw i8 %7704 to i1
  br i1 %7705, label %.invoke, label %7728

7706:                                             ; preds = %7682
  %7707 = landingpad { ptr, i32 }
          cleanup
  br label %7716

7708:                                             ; preds = %7683
  %7709 = landingpad { ptr, i32 }
          cleanup
  br label %7715

7710:                                             ; preds = %7685
  %7711 = landingpad { ptr, i32 }
          cleanup
  br label %7714

7712:                                             ; preds = %7688, %7686
  %7713 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %755) #6
  br label %7714

7714:                                             ; preds = %7712, %7710
  %.pn1234 = phi { ptr, i32 } [ %7713, %7712 ], [ %7711, %7710 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %755) #6
  br label %7715

7715:                                             ; preds = %7714, %7708
  %.pn1234.pn = phi { ptr, i32 } [ %.pn1234, %7714 ], [ %7709, %7708 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %754) #6
  br label %7716

7716:                                             ; preds = %7715, %7706
  %.pn1234.pn.pn = phi { ptr, i32 } [ %.pn1234.pn, %7715 ], [ %7707, %7706 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %754) #6
  br label %.loopexit.split-lp

7717:                                             ; preds = %7690
  %7718 = landingpad { ptr, i32 }
          cleanup
  br label %7721

7719:                                             ; preds = %7691
  %7720 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %756) #6
  br label %7721

7721:                                             ; preds = %7719, %7717
  %.pn1238 = phi { ptr, i32 } [ %7720, %7719 ], [ %7718, %7717 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %756) #6
  br label %.loopexit.split-lp

7722:                                             ; preds = %7695
  %7723 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %757) #6
  br label %.loopexit.split-lp

7724:                                             ; preds = %7697
  %7725 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %758) #6
  br label %.loopexit.split-lp

7726:                                             ; preds = %.preheader1297
  %7727 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %759) #6
  br label %.loopexit.split-lp

7728:                                             ; preds = %7703
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %.preheader1297 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, !llvm.loop !153

.invoke:                                          ; preds = %7703, %7681
  invoke void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232) %0)
          to label %1765 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939, !llvm.loop !154

.loopexit.split-lp:                               ; preds = %.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1483, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1498, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1513, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1528, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1543, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1558, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1573, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1588, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1603, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1618, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1633, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1648, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1662, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1677, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1692, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1707, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1722, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1737, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1752, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1767, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1782, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1797, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1812, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1827, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1842, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1857, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1872, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1887, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1902, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1917, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1932, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1947, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1961, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1976, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1991, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2006, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2021, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2036, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2051, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2066, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2081, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2096, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2111, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2103, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2088, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2073, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2058, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2043, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2028, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2013, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1998, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1983, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1968, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1954, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1924, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1909, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1894, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1879, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1864, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1849, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1834, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1819, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1804, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1789, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1774, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1759, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1744, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1729, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1714, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1699, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1684, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1669, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1655, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1640, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1625, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1610, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1595, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1580, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1565, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1535, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1520, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1505, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1490, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1475, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit, %7726, %7724, %7722, %7721, %7716, %7672, %7666, %7665, %7660, %7651, %7624, %7623, %7618, %7613, %7607, %7582, %7581, %7576, %7562, %7557, %7548, %7513, %7512, %7507, %7502, %7497, %7491, %7457, %7456, %7451, %7446, %7440, %7407, %7406, %7388, %7377, %7372, %7363, %7338, %7337, %7332, %7323, %7296, %7295, %7290, %7285, %7276, %7246, %7245, %7240, %7219, %7198, %7193, %7150, %7144, %7143, %7138, %7127, %7121, %7091, %7090, %7085, %7080, %7075, %7069, %7035, %7034, %7029, %7024, %7019, %7013, %6979, %6978, %6973, %6968, %6960, %6954, %6921, %6920, %6915, %6907, %6901, %6873, %6872, %6867, %6862, %6854, %6848, %6817, %6816, %6811, %6806, %6798, %6766, %6764, %6762, %6761, %6755, %6726, %6725, %6720, %6712, %6703, %6672, %6671, %6666, %6661, %6653, %6613, %6611, %6609, %6608, %6602, %6574, %6573, %6568, %6560, %6554, %6526, %6525, %6520, %6515, %6509, %6482, %6481, %6476, %6471, %6465, %6438, %6437, %6419, %6414, %6409, %6388, %6383, %6378, %6373, %6365, %6359, %6323, %6322, %6317, %6309, %6303, %6275, %6274, %6269, %6264, %6256, %6250, %6219, %6218, %6213, %6208, %6200, %6168, %6166, %6164, %6163, %6157, %6128, %6127, %6122, %6114, %6105, %6074, %6073, %6068, %6063, %6055, %6005, %6003, %6001, %5975, %5973, %5971, %5942, %5940, %5938, %5913, %5894, %5892, %5890, %5889, %5884, %5846, %5844, %5842, %5841, %5812, %5787, %5785, %5783, %5762, %5760, %5758, %5738, %5720, %5718, %5716, %5715, %5685, %5679, %5678, %5673, %5668, %5663, %5627, %5621, %5620, %5615, %5590, %5572, %5566, %5565, %5547, %5538, %5524, %5515, %5510, %5472, %5466, %5465, %5447, %5438, %5433, %5428, %5399, %5393, %5392, %5374, %5365, %5360, %5355, %5326, %5320, %5319, %5314, %5309, %5275, %5273, %5271, %5250, %5229, %5227, %5225, %5224, %5175, %5173, %5171, %5170, %5136, %5134, %5132, %5131, %5094, %5088, %5087, %5082, %5073, %5046, %5045, %5040, %5032, %5023, %4992, %4991, %4986, %4978, %4970, %4929, %4927, %4925, %4924, %4892, %4890, %4888, %4887, %4853, %4851, %4849, %4819, %4792, %4790, %4788, %4787, %4782, %4736, %4734, %4732, %4731, %4704, %4696, %4695, %4639, %4637, %4635, %4634, %4629, %4590, %4588, %4586, %4585, %4552, %4550, %4548, %4546, %4522, %4521, %4516, %4511, %4472, %4466, %4465, %4460, %4455, %4447, %4414, %4408, %4407, %4402, %4397, %4367, %4358, %4342, %4336, %4335, %4330, %4303, %4294, %4281, %4270, %4253, %4247, %4246, %4241, %4236, %4206, %4197, %4181, %4175, %4174, %4169, %4164, %4134, %4125, %4109, %4103, %4102, %4097, %4092, %4062, %4053, %4036, %4034, %4032, %4031, %4026, %3988, %3986, %3984, %3983, %3954, %3952, %3950, %3949, %3920, %3918, %3916, %3915, %3866, %3864, %3862, %3861, %3797, %3791, %3790, %3785, %3776, %3749, %3748, %3743, %3738, %3730, %3692, %3690, %3688, %3687, %3682, %3649, %3647, %3645, %3644, %3593, %3591, %3589, %3588, %3556, %3554, %3552, %3551, %3520, %3518, %3516, %3515, %3480, %3478, %3476, %3475, %3436, %3430, %3429, %3424, %3393, %3391, %3389, %3388, %3359, %3357, %3355, %3332, %3330, %3328, %3311, %3295, %3293, %3291, %3290, %3259, %3257, %3255, %3254, %3248, %3213, %3212, %3207, %3202, %3196, %3171, %3170, %3165, %3151, %3146, %3107, %3105, %3103, %3080, %3078, %3076, %3056, %3054, %3052, %3051, %3020, %3018, %3016, %2995, %2993, %2991, %2990, %2959, %2957, %2955, %2934, %2932, %2930, %2929, %2891, %2889, %2887, %2886, %2857, %2852, %2827, %2822, %2788, %2786, %2784, %2783, %2743, %2737, %2736, %2731, %2700, %2698, %2696, %2695, %2665, %2663, %2661, %2660, %2654, %2625, %2624, %2619, %2614, %2608, %2583, %2582, %2577, %2563, %2558, %2487, %2485, %2483, %2460, %2458, %2456, %2434, %2432, %2430, %2429, %2392, %2390, %2388, %2387, %2351, %2345, %2344, %2339, %2328, %2322, %2292, %2291, %2286, %2272, %2206, %2204, %2202, %2201, %2195, %2167, %2166, %2161, %2153, %2147, %2119, %2118, %2113, %2099, %2009, %2007, %2005, %2004, %1998, %1996, %1943, %1941, %1940, %1900, %1898, %1896, %1895, %1854, %1852, %1850, %1848, %1846, %1844, %1797, %1796, %1791, %1748, %1746, %1744, %1723, %1670, %1668, %1666, %1665, %1604, %1602, %1600, %1577, %1575, %1573, %1547, %1541, %1540, %1535, %1529, %1509, %1508, %1503, %1498, %1492, %1469, %1468, %1463, %1457, %1437, %1436, %1431, %1426, %1421, %1394, %1392, %1390, %1388, %1365, %1364, %1359, %1338, %1336, %1334, %1332, %1308, %1307, %1302, %1297, %1275, %1262, %1256, %1237, %1236, %1231, %1226, %1221, %1194, %1192, %1190, %1189, %1184, %1178, %1154, %1153, %1148, %1127, %1125, %1123, %1122, %1117, %1111, %1087, %1086, %1081, %1076, %1071, %1038, %1036, %1034, %1013, %1011, %1009, %982, %980, %978, %957, %955, %953, %951, %949, %947, %945
  %.pn1240 = phi { ptr, i32 } [ %7727, %7726 ], [ %7725, %7724 ], [ %7723, %7722 ], [ %.pn1238, %7721 ], [ %.pn1234.pn.pn, %7716 ], [ %1855, %1854 ], [ %1853, %1852 ], [ %1851, %1850 ], [ %1849, %1848 ], [ %1847, %1846 ], [ %1944, %1943 ], [ %1942, %1941 ], [ %7673, %7672 ], [ %7667, %7666 ], [ %.pn674, %7665 ], [ %.pn671.pn, %7660 ], [ %7652, %7651 ], [ %7625, %7624 ], [ %.pn669, %7623 ], [ %.pn667, %7618 ], [ %.pn665, %7613 ], [ %7608, %7607 ], [ %7583, %7582 ], [ %.pn663, %7581 ], [ %.pn658.pn.pn.pn, %7576 ], [ %.pn656, %7562 ], [ %.pn653.pn, %7557 ], [ %7549, %7548 ], [ %7514, %7513 ], [ %.pn651, %7512 ], [ %.pn649, %7507 ], [ %.pn647, %7502 ], [ %.pn645, %7497 ], [ %7492, %7491 ], [ %7458, %7457 ], [ %.pn643, %7456 ], [ %.pn641, %7451 ], [ %.pn639, %7446 ], [ %7441, %7440 ], [ %7408, %7407 ], [ %.pn637, %7406 ], [ %.pn635, %7388 ], [ %.pn633, %7377 ], [ %.pn630.pn, %7372 ], [ %7364, %7363 ], [ %7339, %7338 ], [ %.pn628, %7337 ], [ %.pn625.pn, %7332 ], [ %7324, %7323 ], [ %7297, %7296 ], [ %.pn623, %7295 ], [ %.pn621, %7290 ], [ %.pn618.pn, %7285 ], [ %7277, %7276 ], [ %7247, %7246 ], [ %.pn616, %7245 ], [ %.pn614, %7240 ], [ %.pn612, %7198 ], [ %.pn610, %7219 ], [ %.pn606.pn, %7193 ], [ %7151, %7150 ], [ %7145, %7144 ], [ %.pn839, %7143 ], [ %.pn835.pn.pn, %7138 ], [ %.pn833, %7127 ], [ %7122, %7121 ], [ %7092, %7091 ], [ %.pn831, %7090 ], [ %.pn829, %7085 ], [ %.pn827, %7080 ], [ %.pn825, %7075 ], [ %7070, %7069 ], [ %7036, %7035 ], [ %.pn823, %7034 ], [ %.pn821, %7029 ], [ %.pn819, %7024 ], [ %.pn817, %7019 ], [ %7014, %7013 ], [ %6980, %6979 ], [ %.pn815, %6978 ], [ %.pn813, %6973 ], [ %.pn810.pn, %6968 ], [ %.pn808, %6960 ], [ %6955, %6954 ], [ %6922, %6921 ], [ %.pn806, %6920 ], [ %.pn803.pn, %6915 ], [ %.pn801, %6907 ], [ %6902, %6901 ], [ %6874, %6873 ], [ %.pn799, %6872 ], [ %.pn797, %6867 ], [ %.pn794.pn, %6862 ], [ %.pn792, %6854 ], [ %6849, %6848 ], [ %6818, %6817 ], [ %.pn790, %6816 ], [ %.pn788, %6811 ], [ %.pn785.pn, %6806 ], [ %.pn783, %6798 ], [ %6767, %6766 ], [ %6765, %6764 ], [ %6763, %6762 ], [ %.pn781, %6761 ], [ %6756, %6755 ], [ %6727, %6726 ], [ %.pn779, %6725 ], [ %.pn776.pn, %6720 ], [ %.pn773.pn, %6712 ], [ %6704, %6703 ], [ %6673, %6672 ], [ %.pn771, %6671 ], [ %.pn769, %6666 ], [ %.pn766.pn, %6661 ], [ %.pn763.pn, %6653 ], [ %6614, %6613 ], [ %6612, %6611 ], [ %6610, %6609 ], [ %.pn761, %6608 ], [ %6603, %6602 ], [ %6575, %6574 ], [ %.pn759, %6573 ], [ %.pn756.pn, %6568 ], [ %.pn754, %6560 ], [ %6555, %6554 ], [ %6527, %6526 ], [ %.pn752, %6525 ], [ %.pn750, %6520 ], [ %.pn748, %6515 ], [ %6510, %6509 ], [ %6483, %6482 ], [ %.pn746, %6481 ], [ %.pn744, %6476 ], [ %.pn742, %6471 ], [ %6466, %6465 ], [ %6439, %6438 ], [ %.pn740, %6437 ], [ %.pn738, %6419 ], [ %.pn736, %6414 ], [ %.pn734, %6409 ], [ %.pn732, %6388 ], [ %.pn730, %6383 ], [ %.pn728, %6378 ], [ %.pn725.pn, %6373 ], [ %.pn723, %6365 ], [ %6360, %6359 ], [ %6324, %6323 ], [ %.pn721, %6322 ], [ %.pn718.pn, %6317 ], [ %.pn716, %6309 ], [ %6304, %6303 ], [ %6276, %6275 ], [ %.pn714, %6274 ], [ %.pn712, %6269 ], [ %.pn709.pn, %6264 ], [ %.pn707, %6256 ], [ %6251, %6250 ], [ %6220, %6219 ], [ %.pn705, %6218 ], [ %.pn703, %6213 ], [ %.pn700.pn, %6208 ], [ %.pn698, %6200 ], [ %6169, %6168 ], [ %6167, %6166 ], [ %6165, %6164 ], [ %.pn696, %6163 ], [ %6158, %6157 ], [ %6129, %6128 ], [ %.pn694, %6127 ], [ %.pn691.pn, %6122 ], [ %.pn688.pn, %6114 ], [ %6106, %6105 ], [ %6075, %6074 ], [ %.pn686, %6073 ], [ %.pn684, %6068 ], [ %.pn681.pn, %6063 ], [ %.pn678.pn, %6055 ], [ %6006, %6005 ], [ %6004, %6003 ], [ %6002, %6001 ], [ %5976, %5975 ], [ %5974, %5973 ], [ %5972, %5971 ], [ %5943, %5942 ], [ %5941, %5940 ], [ %5939, %5938 ], [ %.pn861, %5913 ], [ %5895, %5894 ], [ %5893, %5892 ], [ %5891, %5890 ], [ %.pn859, %5889 ], [ %.pn855.pn.pn, %5884 ], [ %5847, %5846 ], [ %5845, %5844 ], [ %5843, %5842 ], [ %.pn853, %5841 ], [ %.pn851, %5812 ], [ %5788, %5787 ], [ %5786, %5785 ], [ %5784, %5783 ], [ %5763, %5762 ], [ %5761, %5760 ], [ %5759, %5758 ], [ %.pn849, %5738 ], [ %5721, %5720 ], [ %5719, %5718 ], [ %5717, %5716 ], [ %.pn847, %5715 ], [ %5686, %5685 ], [ %5680, %5679 ], [ %.pn871, %5678 ], [ %.pn869, %5673 ], [ %.pn867, %5668 ], [ %.pn864.pn, %5663 ], [ %5628, %5627 ], [ %5622, %5621 ], [ %.pn879, %5620 ], [ %.pn877, %5615 ], [ %.pn874, %5590 ], [ %5573, %5572 ], [ %5567, %5566 ], [ %.pn895, %5565 ], [ %.pn893, %5538 ], [ %.pn891, %5547 ], [ %.pn888, %5524 ], [ %.pn886, %5515 ], [ %.pn883.pn, %5510 ], [ %5473, %5472 ], [ %5467, %5466 ], [ %.pn908, %5465 ], [ %.pn906, %5438 ], [ %.pn904, %5447 ], [ %.pn901, %5433 ], [ %.pn898.pn, %5428 ], [ %5400, %5399 ], [ %5394, %5393 ], [ %.pn921, %5392 ], [ %.pn919, %5365 ], [ %.pn917, %5374 ], [ %.pn914, %5360 ], [ %.pn911.pn, %5355 ], [ %5327, %5326 ], [ %5321, %5320 ], [ %.pn934, %5319 ], [ %.pn932, %5314 ], [ %.pn929.pn, %5309 ], [ %5276, %5275 ], [ %5274, %5273 ], [ %5272, %5271 ], [ %.pn926, %5250 ], [ %5230, %5229 ], [ %5228, %5227 ], [ %5226, %5225 ], [ %.pn924, %5224 ], [ %5176, %5175 ], [ %5174, %5173 ], [ %5172, %5171 ], [ %.pn844, %5170 ], [ %5137, %5136 ], [ %5135, %5134 ], [ %5133, %5132 ], [ %.pn842, %5131 ], [ %5095, %5094 ], [ %5089, %5088 ], [ %.pn1065, %5087 ], [ %.pn1062.pn, %5082 ], [ %5074, %5073 ], [ %5047, %5046 ], [ %.pn1060, %5045 ], [ %.pn1057.pn, %5040 ], [ %.pn1054.pn, %5032 ], [ %5024, %5023 ], [ %4993, %4992 ], [ %.pn1052, %4991 ], [ %.pn1049.pn, %4986 ], [ %.pn1046.pn, %4978 ], [ %.pn1044, %4970 ], [ %4930, %4929 ], [ %4928, %4927 ], [ %4926, %4925 ], [ %.pn959, %4924 ], [ %4893, %4892 ], [ %4891, %4890 ], [ %4889, %4888 ], [ %.pn957, %4887 ], [ %4854, %4853 ], [ %4852, %4851 ], [ %4850, %4849 ], [ %.pn955, %4819 ], [ %4793, %4792 ], [ %4791, %4790 ], [ %4789, %4788 ], [ %.pn953, %4787 ], [ %.pn951, %4782 ], [ %4737, %4736 ], [ %4735, %4734 ], [ %4733, %4732 ], [ %.pn949, %4731 ], [ %4705, %4704 ], [ %4697, %4696 ], [ %.pn947, %4695 ], [ %4640, %4639 ], [ %4638, %4637 ], [ %4636, %4635 ], [ %.pn945, %4634 ], [ %.pn943, %4629 ], [ %4591, %4590 ], [ %4589, %4588 ], [ %4587, %4586 ], [ %.pn941, %4585 ], [ %4553, %4552 ], [ %4551, %4550 ], [ %4549, %4548 ], [ %4547, %4546 ], [ %4523, %4522 ], [ %.pn966, %4521 ], [ %.pn964, %4516 ], [ %.pn961.pn, %4511 ], [ %4473, %4472 ], [ %4467, %4466 ], [ %.pn975, %4465 ], [ %.pn973, %4460 ], [ %.pn970.pn, %4455 ], [ %.pn968, %4447 ], [ %4415, %4414 ], [ %4409, %4408 ], [ %.pn986, %4407 ], [ %.pn984, %4402 ], [ %.pn981.pn, %4397 ], [ %.pn979, %4358 ], [ %.pn977, %4367 ], [ %4343, %4342 ], [ %4337, %4336 ], [ %.pn999, %4335 ], [ %.pn996.pn, %4330 ], [ %.pn994, %4294 ], [ %.pn992, %4303 ], [ %.pn990, %4281 ], [ %.pn988, %4270 ], [ %4254, %4253 ], [ %4248, %4247 ], [ %.pn1010, %4246 ], [ %.pn1008, %4241 ], [ %.pn1005.pn, %4236 ], [ %.pn1003, %4197 ], [ %.pn1001, %4206 ], [ %4182, %4181 ], [ %4176, %4175 ], [ %.pn1021, %4174 ], [ %.pn1019, %4169 ], [ %.pn1016.pn, %4164 ], [ %.pn1014, %4125 ], [ %.pn1012, %4134 ], [ %4110, %4109 ], [ %4104, %4103 ], [ %.pn1032, %4102 ], [ %.pn1030, %4097 ], [ %.pn1027.pn, %4092 ], [ %.pn1025, %4053 ], [ %.pn1023, %4062 ], [ %4037, %4036 ], [ %4035, %4034 ], [ %4033, %4032 ], [ %.pn1036, %4031 ], [ %.pn1034, %4026 ], [ %3989, %3988 ], [ %3987, %3986 ], [ %3985, %3984 ], [ %.pn1038, %3983 ], [ %3955, %3954 ], [ %3953, %3952 ], [ %3951, %3950 ], [ %.pn1040, %3949 ], [ %3921, %3920 ], [ %3919, %3918 ], [ %3917, %3916 ], [ %.pn1042, %3915 ], [ %3867, %3866 ], [ %3865, %3864 ], [ %3863, %3862 ], [ %.pn938, %3861 ], [ %3798, %3797 ], [ %3792, %3791 ], [ %.pn1146, %3790 ], [ %.pn1143.pn, %3785 ], [ %3777, %3776 ], [ %3750, %3749 ], [ %.pn1141, %3748 ], [ %.pn1139, %3743 ], [ %.pn1136.pn, %3738 ], [ %.pn1133.pn, %3730 ], [ %3693, %3692 ], [ %3691, %3690 ], [ %3689, %3688 ], [ %.pn1131, %3687 ], [ %.pn1129, %3682 ], [ %3650, %3649 ], [ %3648, %3647 ], [ %3646, %3645 ], [ %.pn1127, %3644 ], [ %3594, %3593 ], [ %3592, %3591 ], [ %3590, %3589 ], [ %.pn1124, %3588 ], [ %3557, %3556 ], [ %3555, %3554 ], [ %3553, %3552 ], [ %.pn1122, %3551 ], [ %3521, %3520 ], [ %3519, %3518 ], [ %3517, %3516 ], [ %.pn1120, %3515 ], [ %3481, %3480 ], [ %3479, %3478 ], [ %3477, %3476 ], [ %.pn1118, %3475 ], [ %3437, %3436 ], [ %3431, %3430 ], [ %.pn1109, %3429 ], [ %.pn1106.pn, %3424 ], [ %3394, %3393 ], [ %3392, %3391 ], [ %3390, %3389 ], [ %.pn1104, %3388 ], [ %3360, %3359 ], [ %3358, %3357 ], [ %3356, %3355 ], [ %3333, %3332 ], [ %3331, %3330 ], [ %3329, %3328 ], [ %.pn1102, %3311 ], [ %3296, %3295 ], [ %3294, %3293 ], [ %3292, %3291 ], [ %.pn1100, %3290 ], [ %3260, %3259 ], [ %3258, %3257 ], [ %3256, %3255 ], [ %.pn1098, %3254 ], [ %3249, %3248 ], [ %3214, %3213 ], [ %.pn1096, %3212 ], [ %.pn1094, %3207 ], [ %.pn1092, %3202 ], [ %3197, %3196 ], [ %3172, %3171 ], [ %.pn1090, %3170 ], [ %.pn1085.pn.pn.pn, %3165 ], [ %.pn1083, %3151 ], [ %.pn1080.pn, %3146 ], [ %3108, %3107 ], [ %3106, %3105 ], [ %3104, %3103 ], [ %3081, %3080 ], [ %3079, %3078 ], [ %3077, %3076 ], [ %3057, %3056 ], [ %3055, %3054 ], [ %3053, %3052 ], [ %.pn1111, %3051 ], [ %3021, %3020 ], [ %3019, %3018 ], [ %3017, %3016 ], [ %2996, %2995 ], [ %2994, %2993 ], [ %2992, %2991 ], [ %.pn1113, %2990 ], [ %2960, %2959 ], [ %2958, %2957 ], [ %2956, %2955 ], [ %2935, %2934 ], [ %2933, %2932 ], [ %2931, %2930 ], [ %.pn1115, %2929 ], [ %2892, %2891 ], [ %2890, %2889 ], [ %2888, %2887 ], [ %.pn1078, %2886 ], [ %.pn1076, %2827 ], [ %.pn1074, %2822 ], [ %.pn1072, %2857 ], [ %.pn1070, %2852 ], [ %2789, %2788 ], [ %2787, %2786 ], [ %2785, %2784 ], [ %.pn1068, %2783 ], [ %2744, %2743 ], [ %2738, %2737 ], [ %.pn1174, %2736 ], [ %.pn1171.pn, %2731 ], [ %2701, %2700 ], [ %2699, %2698 ], [ %2697, %2696 ], [ %.pn1169, %2695 ], [ %2666, %2665 ], [ %2664, %2663 ], [ %2662, %2661 ], [ %.pn1167, %2660 ], [ %2655, %2654 ], [ %2626, %2625 ], [ %.pn1165, %2624 ], [ %.pn1163, %2619 ], [ %.pn1161, %2614 ], [ %2609, %2608 ], [ %2584, %2583 ], [ %.pn1159, %2582 ], [ %.pn1154.pn.pn.pn, %2577 ], [ %.pn1152, %2563 ], [ %.pn1149.pn, %2558 ], [ %2488, %2487 ], [ %2486, %2485 ], [ %2484, %2483 ], [ %2461, %2460 ], [ %2459, %2458 ], [ %2457, %2456 ], [ %2435, %2434 ], [ %2433, %2432 ], [ %2431, %2430 ], [ %.pn1183, %2429 ], [ %2393, %2392 ], [ %2391, %2390 ], [ %2389, %2388 ], [ %.pn1181, %2387 ], [ %2352, %2351 ], [ %2346, %2345 ], [ %.pn1230, %2344 ], [ %.pn1226.pn.pn, %2339 ], [ %.pn1224, %2328 ], [ %2323, %2322 ], [ %2293, %2292 ], [ %.pn1222, %2291 ], [ %.pn1217.pn.pn.pn, %2286 ], [ %.pn1210.pn.pn.pn.pn.pn, %2272 ], [ %2207, %2206 ], [ %2205, %2204 ], [ %2203, %2202 ], [ %.pn1208, %2201 ], [ %2196, %2195 ], [ %2168, %2167 ], [ %.pn1206, %2166 ], [ %.pn1203.pn, %2161 ], [ %.pn1201, %2153 ], [ %2148, %2147 ], [ %2120, %2119 ], [ %.pn1199, %2118 ], [ %.pn1194.pn.pn.pn, %2113 ], [ %.pn1187.pn.pn.pn.pn.pn, %2099 ], [ %2010, %2009 ], [ %2008, %2007 ], [ %2006, %2005 ], [ %.pn602, %2004 ], [ %1999, %1998 ], [ %1997, %1996 ], [ %.pn598.pn.pn, %1940 ], [ %1901, %1900 ], [ %1899, %1898 ], [ %1897, %1896 ], [ %.pn596, %1895 ], [ %1845, %1844 ], [ %1798, %1797 ], [ %.pn594, %1796 ], [ %.pn592, %1791 ], [ %1749, %1748 ], [ %1747, %1746 ], [ %1745, %1744 ], [ %.pn587.pn.pn.pn, %1723 ], [ %1671, %1670 ], [ %1669, %1668 ], [ %1667, %1666 ], [ %.pn581.pn.pn.pn, %1665 ], [ %1605, %1604 ], [ %1603, %1602 ], [ %1601, %1600 ], [ %1578, %1577 ], [ %1576, %1575 ], [ %1574, %1573 ], [ %1548, %1547 ], [ %1542, %1541 ], [ %.pn579, %1540 ], [ %.pn577, %1535 ], [ %1530, %1529 ], [ %1510, %1509 ], [ %.pn575, %1508 ], [ %.pn573, %1503 ], [ %.pn571, %1498 ], [ %1493, %1492 ], [ %1470, %1469 ], [ %.pn569, %1468 ], [ %.pn567, %1463 ], [ %1458, %1457 ], [ %1438, %1437 ], [ %.pn565, %1436 ], [ %.pn563, %1431 ], [ %.pn561, %1426 ], [ %.pn559, %1421 ], [ %1395, %1394 ], [ %1393, %1392 ], [ %1391, %1390 ], [ %1389, %1388 ], [ %1366, %1365 ], [ %.pn557, %1364 ], [ %.pn555, %1359 ], [ %1339, %1338 ], [ %1337, %1336 ], [ %1335, %1334 ], [ %1333, %1332 ], [ %1309, %1308 ], [ %.pn553, %1307 ], [ %.pn551, %1302 ], [ %.pn549, %1297 ], [ %.pn547, %1262 ], [ %.pn545, %1275 ], [ %1257, %1256 ], [ %1238, %1237 ], [ %.pn543, %1236 ], [ %.pn541, %1231 ], [ %.pn539, %1226 ], [ %.pn537, %1221 ], [ %1195, %1194 ], [ %1193, %1192 ], [ %1191, %1190 ], [ %.pn535, %1189 ], [ %.pn533, %1184 ], [ %1179, %1178 ], [ %1155, %1154 ], [ %.pn531, %1153 ], [ %.pn529, %1148 ], [ %1128, %1127 ], [ %1126, %1125 ], [ %1124, %1123 ], [ %.pn527, %1122 ], [ %.pn525, %1117 ], [ %1112, %1111 ], [ %1088, %1087 ], [ %.pn523, %1086 ], [ %.pn521, %1081 ], [ %.pn519, %1076 ], [ %.pn, %1071 ], [ %1039, %1038 ], [ %1037, %1036 ], [ %1035, %1034 ], [ %1014, %1013 ], [ %1012, %1011 ], [ %1010, %1009 ], [ %983, %982 ], [ %981, %980 ], [ %979, %978 ], [ %958, %957 ], [ %956, %955 ], [ %954, %953 ], [ %952, %951 ], [ %950, %949 ], [ %948, %947 ], [ %946, %945 ], [ %lpad.loopexit, %.loopexit ], [ %lpad.loopexit1277, %.loopexit.split-lp.loopexit ], [ %lpad.loopexit1281, %.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1284, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1288, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1291, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1295, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1298, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1303, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1306, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1310, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1313, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1317, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1320, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1324, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1327, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1331, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1334, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1338, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1341, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1345, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1348, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1352, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1355, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1359, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1362, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1366, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1369, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1373, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1376, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1380, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1383, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1387, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1390, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1394, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1397, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1401, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1404, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1408, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1411, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1415, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1418, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1422, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1425, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1429, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1432, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1436, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1439, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1443, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1446, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1450, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1453, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1457, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1460, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1464, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1467, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1471, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1478, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1475 ], [ %lpad.loopexit1486, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1483 ], [ %lpad.loopexit1493, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1490 ], [ %lpad.loopexit1501, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1498 ], [ %lpad.loopexit1508, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1505 ], [ %lpad.loopexit1516, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1513 ], [ %lpad.loopexit1523, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1520 ], [ %lpad.loopexit1531, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1528 ], [ %lpad.loopexit1538, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1535 ], [ %lpad.loopexit1546, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1543 ], [ %lpad.loopexit1553, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1550 ], [ %lpad.loopexit1561, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1558 ], [ %lpad.loopexit1568, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1565 ], [ %lpad.loopexit1576, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1573 ], [ %lpad.loopexit1583, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1580 ], [ %lpad.loopexit1591, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1588 ], [ %lpad.loopexit1598, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1595 ], [ %lpad.loopexit1606, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1603 ], [ %lpad.loopexit1613, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1610 ], [ %lpad.loopexit1621, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1618 ], [ %lpad.loopexit1628, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1625 ], [ %lpad.loopexit1636, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1633 ], [ %lpad.loopexit1643, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1640 ], [ %lpad.loopexit1651, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1648 ], [ %lpad.loopexit1658, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1655 ], [ %lpad.loopexit1665, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1662 ], [ %lpad.loopexit1672, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1669 ], [ %lpad.loopexit1680, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1677 ], [ %lpad.loopexit1687, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1684 ], [ %lpad.loopexit1695, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1692 ], [ %lpad.loopexit1702, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1699 ], [ %lpad.loopexit1710, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1707 ], [ %lpad.loopexit1717, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1714 ], [ %lpad.loopexit1725, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1722 ], [ %lpad.loopexit1732, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1729 ], [ %lpad.loopexit1740, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1737 ], [ %lpad.loopexit1747, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1744 ], [ %lpad.loopexit1755, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1752 ], [ %lpad.loopexit1762, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1759 ], [ %lpad.loopexit1770, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1767 ], [ %lpad.loopexit1777, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1774 ], [ %lpad.loopexit1785, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1782 ], [ %lpad.loopexit1792, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1789 ], [ %lpad.loopexit1800, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1797 ], [ %lpad.loopexit1807, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1804 ], [ %lpad.loopexit1815, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1812 ], [ %lpad.loopexit1822, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1819 ], [ %lpad.loopexit1830, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1827 ], [ %lpad.loopexit1837, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1834 ], [ %lpad.loopexit1845, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1842 ], [ %lpad.loopexit1852, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1849 ], [ %lpad.loopexit1860, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1857 ], [ %lpad.loopexit1867, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1864 ], [ %lpad.loopexit1875, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1872 ], [ %lpad.loopexit1882, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1879 ], [ %lpad.loopexit1890, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1887 ], [ %lpad.loopexit1897, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1894 ], [ %lpad.loopexit1905, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1902 ], [ %lpad.loopexit1912, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1909 ], [ %lpad.loopexit1920, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1917 ], [ %lpad.loopexit1927, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1924 ], [ %lpad.loopexit1935, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1932 ], [ %lpad.loopexit1942, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1939 ], [ %lpad.loopexit1950, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1947 ], [ %lpad.loopexit1957, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1954 ], [ %lpad.loopexit1964, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1961 ], [ %lpad.loopexit1971, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1968 ], [ %lpad.loopexit1979, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1976 ], [ %lpad.loopexit1986, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1983 ], [ %lpad.loopexit1994, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1991 ], [ %lpad.loopexit2001, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp1998 ], [ %lpad.loopexit2009, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2006 ], [ %lpad.loopexit2016, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2013 ], [ %lpad.loopexit2024, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2021 ], [ %lpad.loopexit2031, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2028 ], [ %lpad.loopexit2039, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2036 ], [ %lpad.loopexit2046, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2043 ], [ %lpad.loopexit2054, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2051 ], [ %lpad.loopexit2061, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2058 ], [ %lpad.loopexit2069, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2066 ], [ %lpad.loopexit2076, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2073 ], [ %lpad.loopexit2084, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2081 ], [ %lpad.loopexit2091, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2088 ], [ %lpad.loopexit2099, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2096 ], [ %lpad.loopexit2106, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2103 ], [ %lpad.loopexit2114, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2111 ], [ %lpad.loopexit.split-lp, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.sp2113 ]
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %32) #6
  br label %7729

7729:                                             ; preds = %.loopexit.split-lp, %943
  %.pn1240.pn = phi { ptr, i32 } [ %.pn1240, %.loopexit.split-lp ], [ %944, %943 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %32) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %31) #6
  br label %7730

7730:                                             ; preds = %7729, %941
  %.pn1240.pn.pn = phi { ptr, i32 } [ %.pn1240.pn, %7729 ], [ %942, %941 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %31) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %30) #6
  br label %7731

7731:                                             ; preds = %7730, %939
  %.pn1240.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn, %7730 ], [ %940, %939 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %30) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %29) #6
  br label %7732

7732:                                             ; preds = %7731, %937
  %.pn1240.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn, %7731 ], [ %938, %937 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %29) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %28) #6
  br label %7733

7733:                                             ; preds = %7732, %935
  %.pn1240.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn.pn, %7732 ], [ %936, %935 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %28) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %27) #6
  br label %7734

7734:                                             ; preds = %7733, %933
  %.pn1240.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn.pn.pn, %7733 ], [ %934, %933 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %27) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %26) #6
  br label %7735

7735:                                             ; preds = %7734, %931
  %.pn1240.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn.pn.pn.pn, %7734 ], [ %932, %931 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %26) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %25) #6
  br label %7736

7736:                                             ; preds = %7735, %929
  %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn.pn.pn.pn.pn, %7735 ], [ %930, %929 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %25) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %24) #6
  br label %7737

7737:                                             ; preds = %7736, %927
  %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn, %7736 ], [ %928, %927 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %24) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %23) #6
  br label %7738

7738:                                             ; preds = %7737, %925
  %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7737 ], [ %926, %925 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %23) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %22) #6
  br label %7739

7739:                                             ; preds = %7738, %923
  %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7738 ], [ %924, %923 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %22) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %21) #6
  br label %7740

7740:                                             ; preds = %7739, %921
  %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7739 ], [ %922, %921 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %21) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %20) #6
  br label %7741

7741:                                             ; preds = %7740, %919
  %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7740 ], [ %920, %919 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %20) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %19) #6
  br label %7742

7742:                                             ; preds = %7741, %917
  %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7741 ], [ %918, %917 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %19) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %18) #6
  br label %7743

7743:                                             ; preds = %7742, %915
  %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7742 ], [ %916, %915 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %18) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %17) #6
  br label %7744

7744:                                             ; preds = %7743, %913
  %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7743 ], [ %914, %913 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %17) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %16) #6
  br label %7745

7745:                                             ; preds = %7744, %911
  %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7744 ], [ %912, %911 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %16) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %15) #6
  br label %7746

7746:                                             ; preds = %7745, %909
  %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7745 ], [ %910, %909 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %15) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %14) #6
  br label %7747

7747:                                             ; preds = %7746, %907
  %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7746 ], [ %908, %907 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %14) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %13) #6
  br label %7748

7748:                                             ; preds = %7747, %905
  %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7747 ], [ %906, %905 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %13) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %12) #6
  br label %7749

7749:                                             ; preds = %7748, %903
  %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7748 ], [ %904, %903 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %12) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %11) #6
  br label %7750

7750:                                             ; preds = %7749, %901
  %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7749 ], [ %902, %901 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %11) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %10) #6
  br label %7751

7751:                                             ; preds = %7750, %899
  %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7750 ], [ %900, %899 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %10) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %9) #6
  br label %7752

7752:                                             ; preds = %7751, %897
  %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7751 ], [ %898, %897 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %9) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %8) #6
  br label %7753

7753:                                             ; preds = %7752, %895
  %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7752 ], [ %896, %895 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %8) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %7) #6
  br label %7754

7754:                                             ; preds = %7753, %893
  %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7753 ], [ %894, %893 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %7) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %6) #6
  br label %7755

7755:                                             ; preds = %7754, %891
  %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7754 ], [ %892, %891 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %6) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %5) #6
  br label %7756

7756:                                             ; preds = %7755, %889
  %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7755 ], [ %890, %889 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %5) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %4) #6
  br label %7757

7757:                                             ; preds = %7756, %887
  %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7756 ], [ %888, %887 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %4) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %3) #6
  br label %7758

7758:                                             ; preds = %7757, %885
  %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn, %7757 ], [ %886, %885 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %3) #6
  call void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(24) %2) #6
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %2) #6
  resume { ptr, i32 } %.pn1240.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn.pn
}

; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.start.p0(i64 immarg, ptr nocapture) #1

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi16EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #2 align 2

declare i32 @__gxx_personality_v0(...)

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi8EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi14EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi5EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi6EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi12EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi7EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi2EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi4EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi3EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi32EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi2EEaSEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi4EEaSEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(192) ptr @_ZN7sc_core6sc_outIbEaSERKb(ptr noundef nonnull align 8 dereferenceable(192), ptr noundef nonnull align 1 dereferenceable(1)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.end.p0(i64 immarg, ptr nocapture) #1

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN7sc_core9sc_module4waitEv(ptr noundef nonnull align 8 dereferenceable(232)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbE4readEv(ptr noundef nonnull align 8 dereferenceable(184)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi14EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176), ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi16EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176), ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi14EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi7EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi7EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176), ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi3EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi3EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176), ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi16EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) unnamed_addr #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef i64 @_ZNK5sc_dt11sc_int_basecvxEv(ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSEx(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) local_unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt11sc_int_base5rangeEii(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef, i32 noundef) local_unnamed_addr #4 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef i64 @_ZNK5sc_dt15sc_int_subref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(28)) local_unnamed_addr #5 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseES2_(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #4

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi1EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi8EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 1 dereferenceable(1)) local_unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) local_unnamed_addr #4 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef i64 @_ZNK5sc_dt15sc_int_bitref_rcvyEv(ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #4 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSEx(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 1 dereferenceable(1) ptr @_ZNK7sc_core5sc_inIbEcvRKbEv(ptr noundef nonnull align 8 dereferenceable(184)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(176) ptr @_ZN7sc_core6sc_outIN5sc_dt6sc_intILi2EEEEaSERKS3_(ptr noundef nonnull align 8 dereferenceable(176), ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi14EEEEcvRKS3_Ev(ptr noundef nonnull align 8 dereferenceable(168)) local_unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt13sc_int_subrefaSERKNS_11sc_int_baseE(ptr noundef nonnull align 8 dereferenceable(28), ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #4 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi7EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(28)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi16EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(28)) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSEx(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 1 dereferenceable(1)) local_unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dtorEyRKNS_12sc_concatrefE(ptr dead_on_unwind noalias writable sret(%"class.sc_dt::sc_unsigned") align 8, i64 noundef, ptr noundef nonnull align 8 dereferenceable(36)) local_unnamed_addr #4

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi4EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168)) local_unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZNK5sc_dt11sc_int_baseixEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) local_unnamed_addr #4 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi4EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSERKNS_11sc_unsignedE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN5sc_dt11sc_unsignedD2Ev(ptr noundef nonnull align 8 dereferenceable(32)) unnamed_addr #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(28)) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi3EEaSERKS1_(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #3 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZNK5sc_dt15sc_int_bitref_rntEv(ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #5 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi32EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(28)) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi4EEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi14EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi5EEaSEx(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi16EEaSEx(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi7EEC2INS_12sc_concatrefEEERKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi8EEaSINS_12sc_concatrefEEERS1_RKNS_15sc_generic_baseIT_EE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 1 dereferenceable(1)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi9EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi32EEaSEi(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi6EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERNS_13sc_value_baseES1_(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #4

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(28)) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi6EEaSEx(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(28)) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi7EEC2ERKNS_11sc_int_baseE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi10EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZNK7sc_core5sc_inIN5sc_dt6sc_intILi2EEEE4readEv(ptr noundef nonnull align 8 dereferenceable(168)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi14EEaSERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(28)) local_unnamed_addr #3 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZN5sc_dtgtERKNS_11sc_int_baseES2_(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #5

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZN5sc_dt6sc_intILi12EEaSEx(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi2EEC2Ei(ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(36) ptr @_ZN5sc_dtcmERKNS_13sc_value_baseEb(ptr noundef nonnull align 8 dereferenceable(8), i1 noundef zeroext) local_unnamed_addr #4

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef zeroext i1 @_ZN5sc_dtleERKNS_11sc_int_baseERKNS_12sc_concatrefE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(36)) local_unnamed_addr #4

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(28) ptr @_ZN5sc_dt13sc_int_subrefaSERKS0_(ptr noundef nonnull align 8 dereferenceable(28), ptr noundef nonnull align 8 dereferenceable(28)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_intILi7EEC2ERKNS_15sc_int_subref_rE(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(28)) unnamed_addr #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN5sc_dt13sc_value_baseD2Ev(ptr noundef nonnull align 8 dereferenceable(8)) unnamed_addr #3 align 2

attributes #0 = { mustprogress noreturn uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #1 = { mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #2 = { mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #4 = { inlinehint mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #5 = { inlinehint mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #6 = { nounwind }

!llvm.module.flags = !{!0, !1, !2, !3}
!llvm.ident = !{!4}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"bool", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{i8 0, i8 2}
!10 = !{}
!11 = distinct !{!11, !12}
!12 = !{!"llvm.loop.mustprogress"}
!13 = distinct !{!13, !12}
!14 = distinct !{!14, !12}
!15 = distinct !{!15, !12}
!16 = distinct !{!16, !12}
!17 = distinct !{!17, !12}
!18 = distinct !{!18, !12}
!19 = distinct !{!19, !12}
!20 = distinct !{!20, !12}
!21 = distinct !{!21, !12}
!22 = distinct !{!22, !12}
!23 = distinct !{!23, !12}
!24 = distinct !{!24, !12}
!25 = distinct !{!25, !12}
!26 = distinct !{!26, !12}
!27 = distinct !{!27, !12}
!28 = distinct !{!28, !12}
!29 = distinct !{!29, !12}
!30 = distinct !{!30, !12}
!31 = distinct !{!31, !12}
!32 = distinct !{!32, !12}
!33 = distinct !{!33, !12}
!34 = distinct !{!34, !12}
!35 = distinct !{!35, !12}
!36 = distinct !{!36, !12}
!37 = distinct !{!37, !12}
!38 = distinct !{!38, !12}
!39 = distinct !{!39, !12}
!40 = distinct !{!40, !12}
!41 = distinct !{!41, !12}
!42 = distinct !{!42, !12}
!43 = distinct !{!43, !12}
!44 = distinct !{!44, !12}
!45 = distinct !{!45, !12}
!46 = distinct !{!46, !12}
!47 = distinct !{!47, !12}
!48 = distinct !{!48, !12}
!49 = distinct !{!49, !12}
!50 = distinct !{!50, !12}
!51 = distinct !{!51, !12}
!52 = distinct !{!52, !12}
!53 = distinct !{!53, !12}
!54 = distinct !{!54, !12}
!55 = distinct !{!55, !12}
!56 = distinct !{!56, !12}
!57 = distinct !{!57, !12}
!58 = distinct !{!58, !12}
!59 = distinct !{!59, !12}
!60 = distinct !{!60, !12}
!61 = distinct !{!61, !12}
!62 = distinct !{!62, !12}
!63 = distinct !{!63, !12}
!64 = distinct !{!64, !12}
!65 = distinct !{!65, !12}
!66 = distinct !{!66, !12}
!67 = distinct !{!67, !12}
!68 = distinct !{!68, !12}
!69 = distinct !{!69, !12}
!70 = distinct !{!70, !12}
!71 = distinct !{!71, !12}
!72 = distinct !{!72, !12}
!73 = distinct !{!73, !12}
!74 = distinct !{!74, !12}
!75 = distinct !{!75, !12}
!76 = distinct !{!76, !12}
!77 = distinct !{!77, !12}
!78 = distinct !{!78, !12}
!79 = distinct !{!79, !12}
!80 = distinct !{!80, !12}
!81 = distinct !{!81, !12}
!82 = distinct !{!82, !12}
!83 = distinct !{!83, !12}
!84 = distinct !{!84, !12}
!85 = distinct !{!85, !12}
!86 = distinct !{!86, !12}
!87 = distinct !{!87, !12}
!88 = distinct !{!88, !12}
!89 = distinct !{!89, !12}
!90 = distinct !{!90, !12}
!91 = distinct !{!91, !12}
!92 = distinct !{!92, !12}
!93 = distinct !{!93, !12}
!94 = distinct !{!94, !12}
!95 = distinct !{!95, !12}
!96 = distinct !{!96, !12}
!97 = distinct !{!97, !12}
!98 = distinct !{!98, !12}
!99 = distinct !{!99, !12}
!100 = distinct !{!100, !12}
!101 = distinct !{!101, !12}
!102 = distinct !{!102, !12}
!103 = distinct !{!103, !12}
!104 = distinct !{!104, !12}
!105 = distinct !{!105, !12}
!106 = distinct !{!106, !12}
!107 = distinct !{!107, !12}
!108 = distinct !{!108, !12}
!109 = distinct !{!109, !12}
!110 = distinct !{!110, !12}
!111 = distinct !{!111, !12}
!112 = distinct !{!112, !12}
!113 = distinct !{!113, !12}
!114 = distinct !{!114, !12}
!115 = distinct !{!115, !12}
!116 = distinct !{!116, !12}
!117 = distinct !{!117, !12}
!118 = distinct !{!118, !12}
!119 = distinct !{!119, !12}
!120 = distinct !{!120, !12}
!121 = distinct !{!121, !12}
!122 = distinct !{!122, !12}
!123 = distinct !{!123, !12}
!124 = distinct !{!124, !12}
!125 = distinct !{!125, !12}
!126 = distinct !{!126, !12}
!127 = distinct !{!127, !12}
!128 = distinct !{!128, !12}
!129 = distinct !{!129, !12}
!130 = distinct !{!130, !12}
!131 = distinct !{!131, !12}
!132 = distinct !{!132, !12}
!133 = distinct !{!133, !12}
!134 = distinct !{!134, !12}
!135 = distinct !{!135, !12}
!136 = distinct !{!136, !12}
!137 = distinct !{!137, !12}
!138 = distinct !{!138, !12}
!139 = distinct !{!139, !12}
!140 = distinct !{!140, !12}
!141 = distinct !{!141, !12}
!142 = distinct !{!142, !12}
!143 = distinct !{!143, !12}
!144 = distinct !{!144, !12}
!145 = distinct !{!145, !12}
!146 = distinct !{!146, !12}
!147 = distinct !{!147, !12}
!148 = distinct !{!148, !12}
!149 = distinct !{!149, !12}
!150 = distinct !{!150, !12}
!151 = distinct !{!151, !12}
!152 = distinct !{!152, !12}
!153 = distinct !{!153, !12}
!154 = distinct !{!154, !12}


; Effective O3 passes: AggressiveInstCombinePass,CorrelatedValuePropagationPass,EarlyCSEPass,GVNPass,GlobalOptPass,IPSCCPPass,InferFunctionAttrsPass,InstCombinePass,InstSimplifyPass,JumpThreadingPass,LCSSAPass,LICMPass,LoopInstSimplifyPass,LoopRotatePass,LoopSimplifyPass,LoopUnrollPass,PostOrderFunctionAttrsPass,ReassociatePass,SROAPass,SimplifyCFGPass